2024年8月20日 星期二

[Linux] find 命令使用筆記

find是 Linux下用來尋找檔案及目錄的命令。

語法


find [path] [options] [expression]

常用 Option


find command options
-name [pattern]搜尋符合 pattern的檔案。
-iname [pattern]搜尋符合 pattern的檔案。(case insensitive)
-type [type]搜尋特定類型的檔案。-type f為只搜尋檔案,-type d為只搜尋目錄。
-maxdepth [levels]限制最大的搜尋的目錄層數。
-mindepth [levels]限制最小的搜尋的目錄層數。
-exec [command] {} \;對於每個找到的檔案執行 [command],帶入 {}為找到的檔案。
-delete移除所找到的檔案。

使用方法


find . -name "file.txt"

在當前目錄尋找名為 file.txt的檔案。


find . -iname "file.txt"

忽略大小寫,在當前目錄尋找名為 file.txt的檔案。(case insensitive)


find . -name "*.txt"

在當前目錄尋找名稱結尾為 .txt的檔案


find . -name "*file*" -type -d

在當前目錄尋找名稱帶有 file的目錄


find . -name "*file*" -type -f

在當前目錄尋找名稱帶有 file的檔案


find . -iname "*file*" -exec rm -i {} \;

移除所有帶有 file名稱的檔案


應用


find . -iname "*file*" | grep -c ".*"

計算用 find所找到檔案的數量


find . -iname "*file*" | sort

排序用 find所找到的檔案


find . -iname "*file*" | xargs md5sum

取得找到檔案的 md5值


沒有留言:

張貼留言