假如你的工作目录下有下列12个图片文件和1个文本文件:
file1.jpg
file2.jpg
file3.jpg
file4.jpg
file5.jpg
file6.jpg
file7.jpg
file8.jpg
file9.jpg
file10.jpg
file11.jpg
file12.jpg
file1.txt
在命令行中可以使用通配符来完成批量处理的任务(如使用rm命令删除上述文件),通配符可以通过字符匹配一次指定多个文件。
有三个通配符:*(星号)、?(问号)和[](方括号)。
“*”匹配0或多个任意字符。
表1 “*”通配符及其匹配的内容
| 命 令 | 匹 配 |
| rm file1*.jpg | file10.jpg到file12.jpg,但不匹配file1.txt |
| rm file*.jpg | file1.jpg到file12.jpg,但不匹配file1.txt |
| rm *txt | file1.txt,但不匹配file1.jpg到file12.jpg |
| rm file* | file1.jpg到file12.jpg,以及file1.txt |
| rm * | 目录中的所有文件 |
“?”匹配单个字符。
表2 “?”通配符及其匹配的内容
| 命 令 | 匹 配 |
| rm file1?.jpg | file10.jpg到file12.jpg,但不匹配file1.txt |
| rm file?.jpg | file1.jpg到file9.jpg,但不匹配file10.jpg |
| rm file?.* | file1.jpg到file9.jpg,以及file1.txt |
“[]”可以匹配一组单个字符,或者是匹配用连字符(“-”)指定的某一范围内的字符。
表3 “[]”通配符及其匹配的内容
| 命 令 | 匹 配 |
| rm file1[12].jpg | file11.jpg到file12.jpg,但不匹配file10.jpg |
| rm file1[0-2].jpg | file10.jpg到file12.jpg,但不匹配file1.jpg |
| rm file[6-8].jpg | file6.jpg到file8.jpg,但不匹配其他文件 |
本文详细介绍了在命令行中如何使用三种通配符(*、?、[])进行文件批量处理,包括删除、移动等操作,适用于各种场景,帮助提高工作效率。
2264

被折叠的 条评论
为什么被折叠?



