Linux 使用grep筛选多个条件及grep常用过滤命令

cat log.txt | grep 条件;
cat log.txt | grep 条件一 | grep 条件二;
cat log.txt | grep 条件一 | grep 条件二 | grep 条件三;

grep 条件一 log.txt | grep 条件二 | grep 条件三;

不说废话, 例如需要排除 abc.txt 中的  mmm   nnn

grep -v 'mmm\|nnn' abc.txt

但是这样还是很多,需要从这几条信息里面去找到所需要的 ip 地址,我们可能想到了使用 grep -v 屏蔽掉 inet6,结果如下:

bash-3.2# ifconfig | grep inet | grep -v inet6
  inet 127.0.0.1 netmask 0xff000000
  inet 10.60.104.38 netmask 0xfffffe00 broadcast 10.60.105.255

下面看下linux grep常用过滤命令

过滤的内容可以是一个词组等, 需要用引号包裹

1. 获取文件中的关键字key:  cat fileName | grep "key"

2. 获取文件中的某个关键字key1, key2, key3: cat fileName | grep -E "key1|key2|key3"

3.获取文件中的多个关键字,同时满足: cat fileName | grep key1 | grep key2| grep key3

4. 忽略文件中的某个关键字, 需要转义"|":cat fileName | grep -v "key1\|key2\|key3"

总结

相关推荐