1、显示/etc/rc.d/rc.sysinit文件中以不区分大小的h开头的行;
grep -i "^h" /etc/rc.d/rc.sysinit
2、显示/etc/passwd中以sh结尾的行;
grep "sh$" /etc/passwd
3、显示/etc/fstab中以#开头,且后面跟一个或多个空白字符,而后又跟了任意非空白字符的行;
(磁盘文件我不过多举例了,动文件不太好)
grep -E "^#[[:space:]]+\S" /etc/fstab
4、查找/etc/rc.d/rc.local中包含“以to开始并以to结尾”的字串行;
grep "to.*to" /etc/rc.d/rc.local
5、查找/etc/inittab中含有“以s开头,并以d结尾的单词”模式的行;
grep -w "s.*d" /etc/inittab
6、查找ifconfig命令结果中的1-255之间的整数;
ifconfig | grep -oP '(?<=inet addr:)[1-9][0-9]{0,2}(?=\.)'
这里使用了 -o
选项来只输出匹配的部分,-P
选项启用 Perl 正则表达式。
7、显示/var/log/secure文件中包含“Failed”或“FAILED”的行
grep -i "failed" /var/log/secure
8、在/etc/passwd中取出默认shell为bash
grep -E "bash$" /etc/passwd
9、以长格式列出/etc/目录下以ns开头、.conf结尾的文件信息
ls -l /etc/ns*.conf
10、高亮显示passwd文件中冒号,及其两侧的字符
grep --color=always ":[^:]*:" /etc/passwd
11、匹配/etc/services中开头结尾字母一样的单词
grep -E '(\b\w)\w*\1\b' /etc/services