你好,我如何只在:
标记之前匹配?
如果我运行grep test1 file
,它将显示所有三行。
test1:x:29688:test1,test2
test2:x:22611:test1
test3:x:25163:test1,test3
但是我想得到一个输出test1:x:29688:test1,test2
我将不胜感激。
答案 0 :(得分:2)
如果所需行始终以test1
开头,则可以执行以下操作:
grep '^test1' file
如果它总是后面跟随:
,但其他(可能)不匹配,则可以将其作为模式的一部分:
grep 'test1:' file
答案 1 :(得分:2)
由于您的数据是用字符分隔的行,列,因此您可以考虑使用awk
:
awk -F: '$1 == "test1"' file
答案 2 :(得分:0)
我认为您只需要在“ test1”之后添加“:”,请参见示例:
grep “test1:” file