Linux基礎教程之文件查找壓縮命令匯總
為何學習本章節,可以設想一下,在未來工作中面對大量用戶時,想要找到同一類型屬性的用戶文件時,需要一個工具可以快速準確的定位到所尋找的文件,那就是locate和find。
*******************************************************
重點:
? ? 1.德摩根定律
????非(P且Q) = (非P)或(非Q)
????非(P或Q)=(非P)且(非Q)
?
????!A -a !B = !(A -o B)
????!A -o !B = !(A -a B)
2.
find 條件權限perm
????-perm -MODE
????MODE 精確查找 -perm 755
????/MODE 任何一類(u,g,o)對象的權限中只要能一位匹配即可,之間關系為或
????-MODE 每一類對象都必須同時擁有指定權限,之間為與關系
????-020 表示只要組權限為寫就可以,0表示不匹配
示例
????find -perm 755 精確匹配權限為755的文件
????find -perm +222 只要任意人有寫權限,就會匹配
????find -perm -222 當每個人都有寫權限時才匹配
******************************************************
1、查找/var目錄下屬主為root,且屬組為mail的所有文件
????find /var -user root -group mail
2、查找/var目錄下不屬于root、lp、gdm的所有文件
????find /var -not \( -user root -o -user lp -o -user gdm \)
????#\( ?\) 與字符之間要有空格
3、查找/var目錄下最近一周內其內容修改過,同時屬主不為root,也不是postfix的文件
????find /var -mtime -7 -not \( -user root -o -user postfix \)?
4、查找當前系統上沒有屬主或屬組,且最近一個周內曾被訪問過的文件
????find / \( -nouser -o -nogroup \) -atime -7
5、查找/etc目錄下大于1M且類型為普通文件的所有文件
????find /etc/ -size +1M -type f
6、查找/etc目錄下所有用戶都沒有寫權限的文件
????find /etc/ -not -perm +222
#都沒有= -not 至少有一個?
7、查找/etc目錄下至少有一類用戶沒有執行權限的文件
????find /etc/ -not -222 ?
?# 至少有一個沒有= -not 全都有
8、查找/etc/init.d目錄下,所有用戶都有執行權限,且其它用戶有寫權限的文件
find /etc/init.d -perm -113
*********************************************************
shell腳本遺漏點
1.seq 5:1 ,2,3,4,5 默認從1開始
????2.seq 240 255
????3.seq -s + 1 9|bc
????4.grep -q:常常用在條件判斷位置,判斷是否能找到該行
????5.ping -c1 -w1 :用于判斷是否能ping通某個IP地址,-c是指次數,-w指的是超時時間
????
????6.當shell中單獨一行只有echo時,表示換行
????????echo -n 不換行輸出
?7.?echo “user$i”| passwd –stdin “user$i” &> /dev/null條件判斷?
????8.當判斷文件類型時,[ -L file ]要用在其它判斷前面
????9,-a(與)比-o(或)的優先級高??