在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请注意,在使用通配符时要小心,因为它们可能会匹配到不希望操作的文件。在执行删除或其他危险操作之前,请确保你正确地使用了通配符,并仔细检查匹配到的文件列表。