在Linux中,通配符是一種非常有用的工具,它允許你在文件名或路徑中使用特殊字符來匹配一個或多個文件
星號(*):匹配任意長度的任意字符。例如,*.txt 匹配所有擴展名為 .txt 的文件。
問號(?):匹配任意單個字符。例如,file?.txt 匹配 file1.txt、fileA.txt 等,但不匹配 file12.txt。
方括號([]):匹配方括號內的任意一個字符。例如,file[123].txt 匹配 file1.txt、file2.txt 和 file3.txt。你還可以使用連字符(-)來表示字符范圍,如 [a-z] 匹配所有小寫字母。
花括號({}):匹配花括號內的任意一個字符串。例如,file{1,2,3}.txt 匹配 file1.txt、file2.txt 和 file3.txt。你還可以使用逗號分隔多個字符串,如 file{one,two,three}.txt 匹配 fileone.txt、filetwo.txt 和 filethree.txt。
以下是一些使用通配符的示例:
.txt 文件:ls *.txttemp 開頭的文件:rm temp*/home/user 目錄下所有以 .jpg 或 .png 結尾的圖片文件:find /home/user \( -iname "*.jpg" -o -iname "*.png" \).txt 文件重命名為 .bak 擴展名:for file in *.txt; do mv "$file" "${file%.txt}.bak"; done請注意,在使用通配符時要小心,因為它們可能會匹配到不希望操作的文件。在執行刪除或其他危險操作之前,請確保你正確地使用了通配符,并仔細檢查匹配到的文件列表。