本周作業內容:

顯示當前系統上rootfedorauser1用戶的默認shell

#egrep "^(root|user1|fedora)" /etc/passwd|cut -d: -f7

?

2、找出/etc/rc.d/init.d/functions文件中某單詞后面跟一組小括號的行,形如:hello()

#egrep "^[[:alpha:]]+\(\)" /etc/rc.d/init.d/functions?

?

3、使用echo命令輸出一個絕對路徑,使用grep取出其基名;

擴展:取出其路徑名

#echo “/bin/bash” | egrep –o “[[:alpha:]]+$”

?

4、找出ifconfig命令結果中的1-255之間數字;

?#ifconfig | egrep "\<[1-9]\>|\<[1-9][0-9]\>|\<1[0-9][0-9]\>|\<2[0-4][0-9]\>|\<25[0-5]\>"

?

5、挑戰題:寫一個模式,能匹配合理的IP地址;

#ifconfig | egrep "((\<[1-9]\>|\<[1-9][0-9]\>|\<1[0-9][0-9]\>|\<2[0-4][0-9]\>|\<25[0-5]\>)\.){3}(\<[1-9]\>|\<[1-9][0-9]\>|\<1[0-9][0-9]\>|\<2[0-4][0-9]\>|\<25[0-4]\>)"

?

6、挑戰題:寫一個模式,能匹配出所有的郵件地址;

?#egrep "[[:alnum:]]+@( [[:alnum:]]+\.)+[[:alpha:]]{2,}"

?

7、查找/var目錄下屬主為root,且屬組為mail的所有文件或目錄;

#find /var -user root -group mail

?

8、查找當前系統上沒有屬主或屬組的文件;

#find / \( -nouser –o -nogroup \) -ls

?

進一步:查找當前系統上沒有屬主或屬組,且最近3天內曾被訪問過的文件或目錄;

#find / -atime -3 \( -nouser -o -nogroup \) -ls

?

9、查找/etc目錄下所有用戶都有寫權限的文件;

#find /etc -perm -222 -ls

?

10、查找/etc目錄下大于1M,且類型為普通文件的所有文件;

#find /etc –size +1M –type f -ls

?

11、查找/etc/init.d/目錄下,所有用戶都有執行權限,且其它用戶有寫權限的文件;

#find /etc/init.d –perm -113

?

12、查找/usr目錄下不屬于rootbinhadoop的文件;

#find /usr -not \( -user root -o -user bin -o -user hadoop \) -ls

?

13、查找/etc/目錄下至少有一類用戶沒有寫權限的文件;

#find /tmp/ -not -perm -222 ?-ls?

?

14、查找/etc目錄下最近一周內其內容被修改過,且不屬于roothadoop的文件;

#find /etc -mtime -7 -not -user root -a -not -user hadoop -ls