1.显示当前系统上root,fedora或user1用户的默认shell
[root@study ~]# cat /etc/passwd|grep -E "^(root|fedora|user1)"|cut -d: -f7 /bin/bash /bin/bash /bin/bash
2.找出/etc/rc.d/init.d/functions文件中某单词后面跟一组小括号的行,形如:hello();
[root@study ~]# grep -E -o "\<[[:alpha:]]+\>\(\)" /etc/rc.d/init.d/functions checkpid() daemon() killproc() pidfileofproc()
3.使用echo命令输出一个绝对路径,使用grep取出其基名
[root@study ~]# echo "/etc/sysconfig/network-scripts/"|grep -o -E '[^/]+/?$'|cut -d/ -f1 network-scripts
扩展:取出其路径名
[root@study ~]# echo "/etc/sysconfig/network-scripts/"|grep -E '^/.*/$' /etc/sysconfig/network-scripts/
4.找出ifconfig命令结果中的1-255之间的数字;
[root@study ~]# ifconfig|grep -o -E '[1-9]|[1-9][0-9]|1[0-9]{1,2}|2[0-4][0-9]|25[0-5]' 167 77 73 6 ……
5.写出一个模式,能匹配合理IP地址
[root@study ~]# ifconfig|grep -o -E '([1-9]|[1-9][0-9]|[1-9][0-9][0-9]|2[0-4][0-9]|25[0-4])\.([1-9]|[1-9][0-9]|[1-9][0-9][0-9]|2[0-4][0-9]|25[0-4])\.([1-9]|[1-9][0-9]|[1-9][0-9][0-9]|2[0-4][0-9]|25[0-4])\.([1-9]|[1-9][0-9]|[1-9][0-9][0-9]|2[0-4][0-9]|25[0-4])' 192.168.235.128 192.168.235.255
6.写一个模式,匹配邮件地址
[root@study ~]# grep -E -o "\<[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,6}\>" mailadd 141215@qq.com 2522nfsnf@163.com
7.查找/var目录下属主为root,且属组为mail的所有文件或目录
[root@study var]# find /var/ -user root -group mail /var/spool/mail
8.查找当前系统上没有属主或属组的文件,进一步:查找当前系统上没有属主或属组,且最近三天曾被访问过的文件或目录
[root@study var]# find / -nouser -o -nogroup -a -atime 3
9.查找/etc目录下所有用户都有写权限的文件
[root@study var]# find /etc/ -perm /020
10.查找/etc目录下大于1M,且类型为普通文件的所有文件
[root@study var]# find /etc/ -size +1M -type f /etc/udev/hwdb.bin /etc/selinux/targeted/policy/policy.29
12.查找/usr目录下不属于root,bin或hadoop的文件
[root@study ~]# find /usr -not \( -user root -o -user bin -o -user hadoop \) /usr/share/polkit-1/rules.d
13.查找/etc目录下至少有一类用户没有写权限的文件
[root@study ~]# find /etc/ -not -perm /222
14.查找/etc目录下最近一周内其内容被修改过,且不属于root或hadoop的文件
[root@study ~]# fing /etc/ -ctime 7 -a -not \( -user root -o -user hadoop \)
原创文章,作者:N24_小康,如若转载,请注明出处:http://www.178linux.com/61032
评论列表(1条)
整体完成的不错,不过可以对grep做一下知识的总结,正则还是需要多练习掌握的。