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