系统相关
首页 > 系统相关> > shell多字符匹配(grep命令的且或非)

shell多字符匹配(grep命令的且或非)

作者:互联网

shell脚本中grep命令用于匹配字符串

假如有2个字符串str1和str2,有一个文件file

如何选出同时含有$str1和$str2字符串的行呢?如何选出含有$str1或$str2的行呢?如何选出不含有$str1且不含有$str2的行呢?

 1 #选出同时含有两个字符串的行
 2 grep "$str1" $file | grep "$str2"
 3 
 4 #选出含有两个中的一个字符串的行
 5 grep -E "$str1|$str2" $file
 6 
 7 #选出两个字符串都不含有的行
 8 grep -v "$str1" $file | grep "$str2"
 9 
10 #选出不含其中一个字符串的行
11 grep -v "$str1|$str2" $file

另外,显示行号,只需要在grep后面加上选项-n即可

 

标签:shell,grep,str2,str1,选出,file,字符串,或非
来源: https://www.cnblogs.com/liangxuran/p/14516001.html