find 解釋 語法 示例 ...
find
解釋
命令名稱:find
命令所在路徑:/bin/find
執行許可權:所有用戶
功能描述:文件搜索
語法
find [搜索範圍] [匹配條件]
匹配條件:
-name 文件名(區分大小寫)
-iname 文件名(不區分大小寫)
-size 文件大小
+n 大於n位元組的文件
-n 小於n位元組的文件
=n 等於n自己的文件
1數據塊(基本單位) 512B 0.5K
100MB=102400KB=204800(數據塊)
-user 所有者
-group 所屬組查找
-amin 訪問時間access(什麼時候被訪問過)
-cmin 文件屬性change
-mmin 文件內容modify
對於amin/cmin/mmin通用
+n 大於n分鐘的
-n n分鐘以內的
-type 根據文件類型查找
f 文件
d 目錄
l 軟鏈接文件
-inum 根據i節點查找
示例
## 查找/etc目錄下名字叫init的文件和目錄
find /etc -name init
# 查找/etc目錄下名字中包含init的文件和目錄
find /etc -name *init*
# 查找/etc目錄下名字以init為開頭的文件和目錄
find /etc -name init*
# 查找/etc目錄下名字以init為開頭的文件後面還有三個字元的文件和目錄
find /etc -name init???
? 代表一個字元
* 代表多個字元
## 查找/etc目錄下名字叫init的文件和目錄(也可以查找INIT文件)不區分大小寫
find /etc -iname init
## 查找/etc目錄下大於100MB的文件和目錄
find /etc -size +204800
## 查找eternity建立的文件和目錄
find /etc -user eterntiy
## 在/etc目錄下查找5分鐘內被修改過屬性的文件和目錄
find /etc -cmin -5
## 在/etc下查找大於80MB小於100MB的文件和目錄
find /etc -size +163840 -a -size 204800
-a 兩個條件同時滿足(and)
-o 兩個條件滿足任意一個即可
## 在etc下查找名字以init開頭的文件(不包含目錄)
find /etc -name init* -a -type f
## 在etc下查找名字以init開頭的目錄
find /etc -name init* -a -type d
## 在/etc下查找inittab文件並顯示其詳細信息
find /etc -name inittab -exec ls -l {} \;
find /etc -name inittab -ok ls -l {} \;
-exec/-ok 執行命令
ls -l 顯示詳細信息.-ok要確認執行,-exec直接執行
{} 顯示詳細的文件({}里包含的就是find的結果)
\ 轉義符
; 結束標誌
## 在當前目錄下查找i節點為31531的文件並刪除
find . -inum 31531 -exec rm {} \;
## 怎麼確認這個文件有沒有硬鏈接
ls -i /tmp/test.txt 先查看此文件的i節點號
find -inum 節點號,如果有相同的,說明有硬鏈接