我可以使用 grep 命令查找文件中所有包含“abc”的行,但排除以“xyz”结尾的行吗?
例如 grep 'abc' fileName(排除所有以“xyz”结尾的行的方法)
最佳答案
试试这个:
hzhang@dell-work ~ $ cat sample.csv
abc, xyz
abc,1
abc,2
abc,3,xyz
hzhang@dell-work ~ $ grep abc sample.csv |grep -v "xyz$"
abc,1
abc,2
-v的解释:
-v, --invert-match
Invert the sense of matching, to select non-matching lines. (-v is specified by POSIX.)
如果您可以使用 awk
,只需检查模式:
hzhang@dell-work ~ $ awk '/abc/ && !/xyz$/' sample.csv
abc,1
abc,2
关于Linux grep命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29710366/