
删除目录中特定文件的3种方法
我是Linux新用户. 现在,我需要清理下载目录中的文件. 实际上sh 删除文件夹,我只想从〜/下载/文件夹中删除以下格式的文件:
未定义
1. *. iso-所有iso格式文件.
2. *. zip-zip格式的所有文件.
如何在Linux,OS X或类似Unix的系统上删除bash shell中的特定文件?
Bash shell支持丰富的文件模式匹配字符. 例如:

1. *-匹配所有文件.
2. ? -在文件名中匹配单个字母.
3. [...]匹配右括号中的任何字母.
策略1: 查看扩展模式匹配字符
在这里,您需要使用内置的shopt命令在外壳中启用extglob选项sh 删除文件夹,然后才能使用扩展的模式字符. 这些模式匹配字符如下:
1. ? (样式列表)-匹配零个或一个给定的样式.
2. *(样式列表)-将给定的样式匹配零次或多次.

3. +(样式列表)-至少匹配一次给定的样式.
4. @(样式列表)-一次匹配给定的样式.
5. ! (样式列表)-与给定的样式不匹配.
模式列表是由|
分隔的一个或多个模式(文件名).
首先打开extgolb选项:
shopt -s extglob

删除Bash中.zip和.iso文件以外的所有文件
rm命令的语法为:
##仅保留file1文件##
rm! (文件1)
##仅保留file1和file2文件##
rm! (文件1 |文件2)
##仅保留zip文件##

rm! (*. zip)
##仅保留zip和iso文件##
rm! (*. zip | * .iso)
##您也可以使用完整目录##
rm /用户/ vivek /! (*. zip | * .iso | * .mp3)
##也可以传递参数##
rm [选项]! (*. zip | * .iso)
rm -v! (*. zip | * .iso)
rm -f! (*. zip | * .iso)
rm -v -i! (*. php)
策略2: 使用bash的GLOBIGNORE变量删除除指定文件之外的所有文件
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/shouji/article-146916-1.html
要是老萨还活着
海不会不蓝