find
命令可以用來在目錄中查找文件
要排除特定文件,你可以使用 !
符號與 -name
選項結合。例如,要在當前目錄及其子目錄中查找所有 .txt
文件,但排除名為 file_to_exclude.txt
的文件,你可以使用以下命令:
find . -type f -name "*.txt" ! -name "file_to_exclude.txt"
要排除特定目錄,你可以使用 -path
選項與 !
符號結合。例如,要在當前目錄及其子目錄中查找所有 .txt
文件,但排除名為 dir_to_exclude
的目錄,你可以使用以下命令:
find . -type f -name "*.txt" ! -path "./dir_to_exclude/*"
注意,-path
選項后面的參數需要包含通配符 *
,以便排除該目錄下的所有內容。
要同時排除多個文件和目錄,只需將多個 !
符號與相應的選項組合在一起。例如,要在當前目錄及其子目錄中查找所有 .txt
文件,但排除名為 file_to_exclude.txt
的文件以及名為 dir_to_exclude
的目錄,你可以使用以下命令:
find . -type f -name "*.txt" ! -name "file_to_exclude.txt" ! -path "./dir_to_exclude/*"
這將返回一個列表,其中包含所有符合條件的文件,但不包括指定的文件和目錄。