在Linux中,通配符(wildcards)被广泛用于匹配文件名。要匹配特定文件类型,你可以使用以下通配符:
*:匹配任意长度的任意字符。例如,*.txt 将匹配所有扩展名为 .txt 的文件。?:匹配任意单个字符。例如,file?.txt 将匹配 file1.txt、file2.txt 等,但不会匹配 file0.txt 或 file12.txt。[char1,char2]:匹配方括号内的任意一个字符。例如,[ab].txt 将匹配 a.txt 和 b.txt。[!char1,char2]:匹配不在方括号内的任意一个字符。例如,[^ab].txt 将匹配所有不以 a 或 b 开头的 .txt 文件。要匹配特定文件类型,你可以将通配符与文件扩展名结合使用。以下是一些示例:
.txt 文件:*.txt.jpg 和 .png 图片文件:*.jpg *.png.html 或 .htm 结尾的文件:*.html *.htm.txt 结尾的文件:!*.txt你还可以使用 find 命令来查找特定类型的文件。例如,要在当前目录及其子目录中查找所有 .txt 文件,可以使用以下命令:
find . -type f -name "*.txt"
这里,. 表示当前目录,-type f 表示查找文件,-name 参数用于指定文件名模式。