第五周作業
1、顯示當前系統上root、fedora或user1用戶的默認shell;
[root@localhost ~]# egrep '^(fedora|root|user1):' /etc/passwd |cut -d: -f1,7 root:/bin/bash user1:/bin/bash fedora:/bin/bash
2、找出/etc/rc.d/init.d/functions文件中某單詞后面跟一組小括號的行,形如:hello();
[root@localhost ~]# egrep '\<[[:alnum:]]+\>\(\)' /etc/rc.d/init.d/functions checkpid() { daemon() { killproc() { pidfileofproc() { pidofproc() { status() { success() { failure() { passed() { warning() { action() { strstr() {
3、使用echo命令輸出一個絕對路徑,使用grep取出其基名;
擴展:取出其路徑名
取出基名 [root@localhost ~]# echo "/etc/passwd" | grep -o "[^/]\+\/\?$" passwd 取出路徑名
4、找出ifconfig命令結果中的1-255之間數字;
[root@localhost ~]# ifconfig | grep -o -E "[0-9]|[0-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5]"
5、挑戰題:寫一個模式,能匹配合理的IP地址;
[root@localhost ~]# ifconfig | grep -o -E "(([0-9]|[0-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[0-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])" 192.168.0.105 255.255.255.0 192.168.0.255 127.0.0.1 255.0.0.0 192.168.122.1 255.255.255.0 192.168.122.255
6、挑戰題:寫一個模式,能匹配出所有的郵件地址;
[a-z,0-9,_]*\@[a-z,0-9]*\.[a-z]*
7、查找/var目錄下屬主為root,且屬組為mail的所有文件或目錄;
[root@localhost ~]# find /var -user root -a -group mail /var/spool/mail
8、查找當前系統上沒有屬主或屬組的文件;
進一步:查找當前系統上沒有屬主或屬組,且最近3天內曾被訪問過的文件或目錄;
查找沒有屬主或屬組的文件 [root@localhost ~]# find / -nouser -o -nogroup 查找沒有屬主或屬組且3天美被訪問過的文件或目錄 [root@localhost ~]# find / ( -nouser -o -nogroup ) -a -atime -3
9、查找/etc目錄下所有用戶都有寫權限的文件;
[root@localhost ~]# find /etc -perm -222
10、查找/etc目錄下大于1M,且類型為普通文件的所有文件;
[root@localhost ~]# find /etc -size +1M -type f