N27_网络班 第五周作业
1、 显示当前系统上root、fedora或user1用户的默认shell
[root@localhost ~]# grep -E '^(root|fedora|user1)' /etc/passwd | cut -d: -f1,7
2、 找出/etc/rc.d/init.d/function文件中某单词后面跟一组小括号的行,形如:hello();
[root@localhost ~]# grep -E '[[:alpha:]]+\(\)' /etc/rc.d/init.d/functions
3、 使用echo命令输出一个绝对路径,使用grep取出其基名;扩展:取出其路径名
[root@localhost ~]# echo "/etc/rc.d/init.d/functions/" | grep -E -o '[^/]+/?$'
[root@localhost ~]# echo "/etc/rc.d/init.d/functions" | grep -E -o '^/.*/'
4、 找出ifconfig命令结果中的1-255之间的数字;
[root@localhost ~]# ifconfig | grep -E -o '(2[0-5][0-5]|1[0-9][0-9]|[0-9][0-9]|[1-9])'
5、 挑战题:写一个模式,能匹配合理地IP地址
[root@localhost ~]# ifconfig | grep -E -o '((2[0-5][0-5]|1[0-9][0-9]|[0-9][0-9]|[0-9]).){3}(2[0-5][0-5]|1[0-9][0-9]|[0-9][0-9]|[0-9])'
6、 挑战题:写一个模式,能匹配出所有的邮件地址;
[root@localhost ~]# grep -E -o '[[:alnum:]]+\@[[:alnum:]]+\.[[:alpha:]]+'
7、 查找/var目录下属主为root,且属组为mail的所有文件或目录;
[root@localhost ~]# find /var -user root -group mail
8、 查找当前系统上没有属主或属组的文件;
进一步:查找当前系统上没有属主或属组,且最近3天内曾被访问或的文件或目录
[root@localhost ~]# find / -nouser -a -nogroup
[root@localhost ~]# find / -nouser -a -nogroup -a -atime -3
9、 查找/etc目录下所有用户都有写权限的文件
[root@localhost ~]# find /etc -perm -222
10、 查找/etc目录下大于1M,且类型为普通文件的所有文件
[root@localhost ~]# find /etc -type f -size +1M
原创文章,作者:N27_flypig,如若转载,请注明出处:http://www.178linux.com/85510

