删除某个文件(或者某些)之外的文件时候,例如要删除某个目录下的3.txt、4.txt
最简单的是下面的命令:
rm -rf ./!(1.txt|2.txt)
有时候会报错:bash: !: event not found
原因:未开启扩展通配符
shopt使用
shopt [-psu] [optname …]
- -s 开启某个选项。
- -u 关闭某个选项。
- -p 列出所有可设置的选项。
1、列出所有可设置的选项:shopt -p
2、查看扩展通配符是否开启:shopt extglob
3、开启扩展通配符:shopt -s extglob
4、查看开启状态:
5、 关闭extglob
########################
执行删除操作: