我有一个基于列的 .txt 文件,我想用 grep 输出公用名,但有点麻烦。
V 300223164711Z 01 unknown /C=UK/O=LMG/OU=server/CN=server/name=server/[email protected]
V 300223170002Z 02 unknown /C=UK/O=LMF/OU=server/CN=test/name=server/[email protected]
V 300223170935Z 03 unknown /C=UK/O=risk/OU=server/CN=risk/name=server/[email protected]
我当前的 grep 输出执行以下操作:
tail -n +2 index.txt | grep "^V" | cut -d '/' -f 5 | nl -s ') '
1) CN=test
2) CN=risk
我只希望名称是输出,“测试”或“风险”。实现这一目标的最简单方法是什么?
你
awk
可以这样做(假设 CN 的位置总是相同的:要添加找到 CN 记录的行号,可以使用如下代码:
sed应该是你的朋友之一