rm 删除某个文件(文件夹)外所有文件,如 rm -rf !(ftmp) —— 删除当前目录下除 ftmp 开头的文件/文件夹外所有文件和目录,提示 -bash: !: event not found 错误怎么解决?
-bash: !: event not found 错误怎么解决?
rm -rf !(ftmp) —— 删除当前目录下除 ftmp 开头的文件/文件夹外所有文件和目录,提示 -bash: !: event not found 错误怎么解决?
風冷無霜 0xo.net|uxtt.com|867755.com…
「rm 删除文件提示 -bash: !: event not found 错误怎么解决?:https://bdkp.net/25」
错误原因:未开启扩展通配符
shopt 使用
shopt [-psu] [optname …]
- -s 开启某个选项
- -u 关闭某个选项
- -p 列出所有可设置的选项
列出所有可设置选项:shopt -p
風冷無霜 0xo.net|uxtt.com|867755.com…
「rm 删除文件提示 -bash: !: event not found 错误怎么解决?:https://bdkp.net/25」
查看扩展通配符是否开启:shopt extglob
开启扩展通配符:shopt -s extglob
風冷無霜 0xo.net|uxtt.com|867755.com…
「rm 删除文件提示 -bash: !: event not found 错误怎么解决?:https://bdkp.net/25」
开启 extglob 扩展通配符再执行 rm -rf !(ftmp) 就不会报错了。
如何经常使用,还可以写成 shell 脚本,如:
#! /bin/bash
cd /root/test
shopt -s extglob
rm -rf !(lock|unlock)
echo ***Cleaning Done***