grep
grep/find:
grep对文件的内容,会对文件的每一行进行过滤匹配查找。
find是对文件的属性,如文件名,文件大小等。
find 路径 -name '1.txt'
find . -name '*.sh'
find "测试字段" 1.txt | grep wc -l
grep:grep root /etc/passwd
^ 以xx开头:grep '^p' /etc/passwd
proxy:x:13:13:proxy:/bin:/usr/sbin/nologin
pulse:x:115:120:PulseAudio daemon,,,:/var/run/pulse:/usr/sbin/nologin
$ 以xx结尾(-n:显示行号):grep -n 'sh$' /etc/passwd
1:root:x:0:0:root:/root:/bin/bash
41:yang01:x:1000:1000:yang01,,,:/home/yang01:/bin/bash
43:yang2:x:1001:1001::/home/yang2:/bin/sh
-r 递进搜索:grep -nr 'bash' .
匹配到二进制文件 ./.for.sh.swo
./for.sh:1:#!/bin/bash
./02.sh:1:#! /bin/bash
./while.sh:1:#!/bin/bash
-i 忽略大小写
-v 取反
-E 支持拓展类型正则(egrep):grep -E '0{2}' /etc/passwd
systemd-network:x:100:102:systemd Network Management,,,:/run/systemd/netif:/usr/sbin/nologin
yang01:x:1000:1000:yang01,,,:/home/yang01:/bin/bash
yang2:x:1001:1001::/home/yang2:/bin/sh
grep -E '0+' /etc/passwd(-F:不支持正则,按字符串匹配)
yang01:x:1000:1000:yang01,,,:/home/yang01:/bin/bash
yang2:x:1001:1001::/home/yang2:/bin/sh
yang03:x:999:999::/home/yang03:/bin/bash
yang02:x:998:998::/home/yang02:/bin/bash
yang04:x:1002:1005::/home/yang04:/bin/sh
u1:x:1003:1006::/home/u1:/bin/sh
u2:x:1004:1007::/home/u2:/bin/sh
egrep '0{3}' /etc/passwd
yang01:x:1000:1000:yang01,,,:/home/yang01:/bin/bash
-l 文件 grep -lr '.bash' .
./.for.sh.swo
./for.sh
./06.sh
./02.sh
./while.sh
-C2 匹配字符的前后n行也取出 grep -C2 'www' /etc/passwd
uucp:x:10:10:uucp:/var/spool/uucp:/usr/sbin/nologin
proxy:x:13:13:proxy:/bin:/usr/sbin/nologin
www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin
backup:x:34:34:backup:/var/backups:/usr/sbin/nologin
list:x:38:38:Mailing List Manager:/var/list:/usr/sbin/nologin
grep -A2 'www' /etc/passwd
www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin
backup:x:34:34:backup:/var/backups:/usr/sbin/nologin
list:x:38:38:Mailing List Manager:/var/list:/usr/sbin/nologin
grep -B2 'www' /etc/passwd
uucp:x:10:10:uucp:/var/spool/uucp:/usr/sbin/nologin
proxy:x:13:13:proxy:/bin:/usr/sbin/nologin
www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin

浙公网安备 33010602011771号