小白入門之十四:find命令實現多條件查找文件
目的
熟練使用find命令在多條件限定下查找符合條件的文件。
find命令功能:在一個層級目錄里搜尋文件,支持查詢條件為文件名、文件大小、文件權限、文件屬組/屬主、文件時間戳、文件類型等。
前提
可用的centos7系統,連接網絡。
命令介紹
【例1】查找/var目錄下屬主為root,且屬組為mail的所有文件
[root@Magedu ~]# find /var/ -user root -group mail
? /var/spool/mail
? /var/spool/mail/root
【例2】查找/var目錄下不屬于root、lp、gdm的所有文件
[root@Magedu ~]# find /var -not \( -user root -o -user lp -o -user gdm \)
【例3】找出/home/var/log目錄下刪除所有以.log結尾的文件并無需人工確認刪除
[root@Magedu ~]# find /home/var/log -name "*.log" -exec rm {} \;
【例4】找出/etc目錄下所有以.conf結尾的文件
[root@Magedu ~]# find /etc -name "*.conf"
【例5】將30天前的.log文件,大于10G的文件移動到old目錄中
[root@Magedu ~]# find ./ -type f -size +10G -mtime +30 -name "*.log" -exec mv {} old \;
【例6】查找/tmp目錄下,u,g,o任何一類用戶(至少有一類)中有讀或寫權限的文件;
[root@Magedu ~]# find /tmp/ -perm /666 -ls
【例7】查找/tmp目錄下,權限為104的文件
[root@Magedu ~]# find /tmp/ -perm 104 -ls
【例8】查找/tmp目錄下,任何一類用戶的任何一位權限有執行或或讀權限的文件;
[root@Magedu ~]# find /tmp/ -perm /104 -ls
【例9】查找/tmp目錄下,屬主有執行權限同時其它有讀權限的文件
[root@Magedu ~]# find /tmp/ -perm -104 -ls
文章來源于網絡,侵刪!