溫馨提示×

Linux通配符如何匹配特定文件類型

小樊
81
2024-10-09 02:57:22
欄目: 智能運維

在Linux中,通配符(wildcards)被廣泛用于匹配文件名。要匹配特定文件類型,你可以使用以下通配符:

  1. *:匹配任意長度的任意字符。例如,*.txt 將匹配所有擴展名為 .txt 的文件。
  2. ?:匹配任意單個字符。例如,file?.txt 將匹配 file1.txtfile2.txt 等,但不會匹配 file0.txtfile12.txt。
  3. [char1,char2]:匹配方括號內(nèi)的任意一個字符。例如,[ab].txt 將匹配 a.txtb.txt。
  4. [!char1,char2]:匹配不在方括號內(nèi)的任意一個字符。例如,[^ab].txt 將匹配所有不以 ab 開頭的 .txt 文件。

要匹配特定文件類型,你可以將通配符與文件擴展名結(jié)合使用。以下是一些示例:

  • 匹配所有 .txt 文件:*.txt
  • 匹配所有 .jpg.png 圖片文件:*.jpg *.png
  • 匹配所有以 .html.htm 結(jié)尾的文件:*.html *.htm
  • 匹配所有不以 .txt 結(jié)尾的文件:!*.txt

你還可以使用 find 命令來查找特定類型的文件。例如,要在當(dāng)前目錄及其子目錄中查找所有 .txt 文件,可以使用以下命令:

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

這里,. 表示當(dāng)前目錄,-type f 表示查找文件,-name 參數(shù)用于指定文件名模式。

0