grep命令使用与总结
grep它最擅长是过滤内容/匹配内容
常用参数有以下几个
-v:排除已经匹配到内容的行(最小单位是:行)
-o:只显示被到的内容,基本也没有什么作用,不要去记住它
-A:在匹配到内容的当前行,向后面显示多少条内容 After=>后面的意思
-B:在匹配到内容的当前行,向前面显示多少条内容 Beforce=>前面的意思
-C:在匹配到内容的当前行,以当前行为中心,上下各显示多少条内容 Center=〉中间的意思
-E:egrep的扩展 参数加上它 可以一次性匹配多条个条件 但要用竖线进行分隔 |
-n:显示内容的行号
使用grep匹配内容的时候 建议使用双引号
示例如下:
1、在/etc/passwd文件里面 匹配到 hadoop这个词
[root@oldboyLinux ~]# grep "hadoop" /etc/passwd hadoop:x:500:500::/home/hadoop:/bin/bash
2、参数-v的使用 排除内容为 ftp的内容 所有带有ftp字样的行 都不要显示出来
[root@oldboyLinux ~]# grep -v "ftp" /etc/passwd root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin ... ... ... tcpdump:x:72:72::/:/sbin/nologin oprofile:x:16:16:Special user account to be used by OProfile:/home/oprofile:/sbin/nologin hadoop:x:500:500::/home/hadoop:/bin/bash
3、使用正则表达式来进行匹配
如果想过滤掉所有的配置文件为注释的内容 排除所有以#开头的行内容
[root@oldboyLinux etc]# grep -v "^#" /etc/udev/rules.d/70-persistent-net.rules
4、匹配以什么字符结尾的内容
[root@oldboyLinux etc]# grep "nologin$" /etc/passwd
5、grep还可以显示文件内容的行号 -n参数的使用
[root@oldboyLinux etc]# grep -n . /etc/passwd 1:root:x:0:0:root:/root:/bin/bash 2:bin:x:1:1:bin:/bin:/sbin/nologin 3:daemon:x:2:2:daemon:/sbin:/sbin/nologin 4:adm:x:3:4:adm:/var/adm:/sbin/nologin 5:lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin 6:sync:x:5:0:sync:/sbin:/bin/sync 7:shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown 8:halt:x:7:0:halt:/sbin:/sbin/halt 9:mail:x:8:12:mail:/var/spool/mail:/sbin/nologin 10:uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin 11:operator:x:11:0:operator:/root:/sbin/nologin 12:games:x:12:100:games:/usr/games:/sbin/nologin 13:gopher:x:13:30:gopher:/var/gopher:/sbin/nologin 14:ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin 15:nobody:x:99:99:Nobody:/:/sbin/nologin 16:dbus:x:81:81:System message bus:/:/sbin/nologin 17:vcsa:x:69:69:virtual console memory owner:/dev:/sbin/nologin 18:abrt:x:173:173::/etc/abrt:/sbin/nologin 19:haldaemon:x:68:68:HAL daemon:/:/sbin/nologin 20:ntp:x:38:38::/etc/ntp:/sbin/nologin 21:saslauth:x:499:76:"Saslauthd user":/var/empty/saslauth:/sbin/nologin 22:postfix:x:89:89::/var/spool/postfix:/sbin/nologin 23:sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin 24:tcpdump:x:72:72::/:/sbin/nologin 25:oprofile:x:16:16:Special user account to be used by OProfile:/home/oprofile:/sbin/nologin 26:hadoop:x:500:500::/home/hadoop:/bin/bash
原创文章,作者:3628473679,如若转载,请注明出处:https://blog.ytso.com/tech/opensource/191063.html