溫馨提示×

linux find命令怎樣使用通配符

小樊
81
2024-11-15 01:13:38
欄目: 智能運維

在Linux中,find命令是一個非常強大的工具,用于在目錄樹中查找文件和目錄

  1. 單個通配符:

    • *:匹配任意長度的任意字符。例如,find . -name "*.txt" 將查找當(dāng)前目錄及其子目錄中的所有.txt文件。
    • ?:匹配任意單個字符。例如,find . -name "?file.txt" 將查找當(dāng)前目錄及其子目錄中的所有以單個字符開頭和結(jié)尾的.txt文件。
  2. 多個通配符:

    • *pattern*:匹配包含pattern的字符串。例如,find . -name "*log*.txt" 將查找當(dāng)前目錄及其子目錄中的所有包含log.txt文件。
    • {pattern1,pattern2}:匹配pattern1pattern2。例如,find . -name "{file1,file2}.txt" 將查找當(dāng)前目錄及其子目錄中的所有.txt文件,但僅限于file1.txtfile2.txt
  3. 通配符表達式:

    • [abc]:匹配方括號內(nèi)的任意一個字符(a、b或c)。例如,find . -name "[ab]file.txt" 將查找當(dāng)前目錄及其子目錄中的所有以ab開頭的.txt文件。
    • [^abc]:匹配不在方括號內(nèi)的任意一個字符(a、b或c)。例如,find . -name "[^ab]file.txt" 將查找當(dāng)前目錄及其子目錄中的所有不以ab開頭的.txt文件。

在使用find命令時,可以將通配符與其他選項一起使用,例如:

  • -type f:僅查找文件(不包括目錄)。
  • -type d:僅查找目錄(不包括文件)。
  • -mtime:根據(jù)修改時間過濾文件。例如,find . -type f -mtime -7 將查找過去7天內(nèi)修改過的所有文件。

這是一個基本的find命令示例,使用通配符查找當(dāng)前目錄及其子目錄中的所有.txt文件:

find . -name "*.txt"

0