您好,登錄后才能下訂單哦!
find:文件查找
作用:實時查找工具,通過遍歷指定路徑完成問件查找,遞歸地在層次目錄中處理文件
find的特點:
1.精確查找,實時查找
2.可能只搜索用戶具備讀取和執行權限的目錄
3.查找速度略慢
find(什么也不要跟就會把當前目錄的所有列表全部顯示出來,find默認是遞歸搜索的)
語法:
find [OPTION]... [查找路徑] [查找條件] [處理動作]
查找路徑:指定具體目標路徑;默認為當前目錄
查找條件:指定的查找標準,可以文件名、大小、類型、權限等標準進行;默認為找出指定路徑下的所有文件
處理動作:對符合條件的文件做操作,默認輸出至屏幕
選項:
搜索目錄層級
-maxdepth level :最大搜索目錄深度
-mindepth level :最小搜索目錄深度
例: find 目錄 -maxdepth 2 -mindepth 2:只搜索2級目錄
-depth:find 目錄 -depth:先處理文件后處理目錄
根據文件名和inode查找:
-name "文件名稱":支持使用glob
*, ?, [], [^]
-iname "文件名稱":不區分字母大小寫
-inum n 按inode號查找
例:
[root@localhost data]$find /data -inum 67
/data/123.txt
-samefile name 相同inode號的文件
例:
find /data -samefile /data/fi.sh:查看節點編號相同的文件前后目錄可以不一致
搜索的目錄 標準文件所在的目錄
-links n 鏈接數為n的文件
-regex “PATTERN”:以PATTERN匹配整個文件路徑,而非文件名稱(匹配的是完整路徑)
根據文件屬主和屬組查找;
-user username:查找屬主為指定用戶的文件
-group groupname:查找屬組為指定組的文件
-uid useruid:查找屬主為指定UID的文件
-gid groupgid:查找屬組為指定GID的文件
-nouser:查找沒有屬主的文件
-nogroup:查找沒有屬組的文件
根據文件類型查找:
-type:
b 特殊塊文件(緩沖的)
c 特殊字符文件(不緩沖)
d 目錄
p 命名管道 (FIFO)
f 普通文件
l 符號鏈接
s 套接字
空文件或目錄
-empty
-type d -empty
根據文件大小:
-size:常用單位(K M G c(Byte))
+#M:表示大于#M的文件,+5M
-#M:表示小于于#M的文件,-5M
根據時間查找:
以天為單位:
-atime:訪問時間
+,-:+10,超過十天訪問過的文件,-10十天內訪問過的文件
-mtime:修改時間,文件內容最后一次修改的時間,文件內容修改
-ctime:改變時間,文件最后一個改變的時間,屬性及文件名改變
以分鐘為單位:
-amin:訪問時間
-mmin:修改時間
-cmin:改變時間
根據文件權限查找:
-perm:
mode:精確查找
/mode:任何一類(u,g,o)對象的權限只要匹配一位就滿足條件。或的關系。早期用+號表示
-mode:每一類對象都必須擁有指定權限才滿足條件
0:表示不關注
例:find -perm 755 file,精確匹配權限755的文件
find -perm /222 file,屬主,屬組,其他人,其中一個有寫權限就匹配
find -perm -222 file,屬主,屬組,其他人,必須每個都有寫權限就匹配
find -perm -002 file ,只有其他人有寫權限時才匹配
動作:
-print:默認的處理動作,將匹配到的顯示到屏幕
-ls:類似于ls -l查看文件
-delete:匹配到的內容刪除(危險,不要用)
-fls file:查找到的文件以長格式信息保存到指定的文件中
-ok command {} \; :對查找到的文件,執行由command位指定的命令,缺點是對每個匹配的文件執行命令前都需要確認
例:find /data -name "*.sh" -ok mv {} /tmp \;
{}:引用前面find匹配到的文件,引用查找到的文件名稱自身,例如匹配的是ping.sh,name{}內就位{ping.sh}
\;:語法格式,必須以\;結尾
-exec command {} \; :對查找到的文件,執行由command位指定的命令,和ok不同的是不需要一個一個確認
例:find /data -name "*.sh" -ok mv {}.bak /tmp \;
{}.bak:移動到/tmp目錄下改名為以.bak為后綴的文件
查找/var/目錄下不屬于root、lp、gdm的所有文件
[root@centos7 ~]#find /var ! -user root ! -user lp ! -user gdm -type f
/var/lib/colord/mapping.db
/var/lib/colord/storage.db
/var/lib/nfs/state
/var/lib/unbound/root.key
/var/lib/setroubleshoot/setroubleshoot_database.xml
/var/lib/setroubleshoot/email_alert_recipients
/var/lib/postfix/master.lock
/var/spool/mail/rpc
/var/spool/mail/cheng
/var/spool/mail/ning
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。