rm ./-123.txt

rm — -123.txt

find大法:find . -not -name “a.txt” -exec rm -rf {} \;
find . -not -name “a.txt” | xargs rm -rf
ls -i #9279334 -123.txt
find ./ -inum 9279334 -exec rm -i {} \;

egrep大法:rm `ls *.txt|egrep -v a.txt`
rm `ls *.txt|egrep -v ‘(a.txt|b.txt|c.txt)’`
rm `find . -name *.txt | egrep -v a.txt|b.txt|c.txt)’`

awk大法:rm `ls *.txt|awk ‘{if(0 != “a.txt”) print0}’`

脚本大法:for i in `ls`;do if [ “i” != a.txt ];then rm -rfi;fi;done;

特殊字符文件名:“”转义符或“”双引号引起控制
乱码文件: 先看下rm有没有别名,再用rm * 逐条输入y

扩展通配符:shopt -s extglob
rm -rf !(a.txt)
\ / \0等系统保留字符:挂nfs在windows下删除

1 对 “rm删除特殊文件名”的想法;

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注

Captcha Code