rm 命令删除除指定文件外的所有文件,非常简单

非常简单, 只需要在不需要删除的文件前面添加英文感叹号 !,多个文件用竖线隔开放在小括号里。

比如要删除 除 testfile 和 libtest.so 之外的所有文件及文件夹,

rm -rf !(testfile|libtest.so)

注1,两个保留文件中间是用 竖线 | 隔开的, 而且两边不应有空格

注2, 如果上边的命令提示错误 bash: !: event not found
则使用下述命令打开相应的扩展模式匹配的相关设置

shopt -s extglob

之后再使用第一条命令即可。

你可能感兴趣的:(经验详谈,bash,rm)