微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

grep/awk/sed 或者 并且 否定

Grep 'OR' Operator  grep 与“或”一起用

Find all the lines in a file, that match any of the following patterns.

Using GREP command :

grep "pattern1\|pattern2" file.txt
grep -E "pattern1|pattern2" file.txt
grep -e pattern1 -e pattern2 file.txt
egrep "pattern1|pattern2" file.txt

Using AWK command :

awk '/pattern1|pattern2/' file.txt

Using SED command :

sed -e '/pattern1/b' -e '/pattern2/b' -e d file.txt



Grep 'AND' Operator grep 与“与”一起用

Find and print all the lines in a file, that match multiple patterns.

Using GREP command :

grep -E 'pattern1.*pattern2' file.txt # in that order
grep -E 'pattern1.*pattern2|pattern2.*pattern1' file.txt # in any order
grep 'pattern1' file.txt | grep 'pattern2' # in any order

Using AWK command :

awk '/pattern1.*pattern2/' file.txt # in that order
awk '/pattern1/ && /pattern2/' file.txt # in any order

Using SED command :

sed '/pattern1.*pattern2/!d' file.txt # in that order
sed '/pattern1/!d; /pattern2/!d' file.txt # in any order



Grep 'NOT' Operator grep 与“非”一起用

Find and print all the lines, that do not match a pattern.

Using GREP command :

grep -v 'pattern1' file.txt

Using AWK command :

awk '!/pattern1/' file.txt

Using SED command :

sed -n '/pattern1/!p' file.txt

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。