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,结果如下:

1、|bash-3.2# ifconfig | grep inet | grep -v inet6
2、| inet 127.0.0.1 netmask 0xff000000
3、| 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"

转自:https://www.linuxprobe.com/linux-grep-2.html

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注