在linux下删除文件,遇到特殊字符是一件非常头疼的事情。
1. 如果文件名带 ‘-’ 或者‘--’这样的字符
删除办法为:rm -- 文件名
如文件名为:-pythontab.tgz
如果用普通方法去删除:
1
rm -pythontab.tgz
结果错误:
rm: invalid option -- pythontab
Try `rm --help' for more information.
可以用:
1
rm -- -pythontab.tgz
则能成功删除。
2. 删除包含其它特殊字符的文件
对于含有其它特殊字符的文件名,如<>!*等,可用
“”转义符或“”双引号引起控制
如名为“>”或“*”
1
2
[root@test]# rm >
[root@test]# rm “*”
3. 删除系统打不出的乱码文件名(终极解决办法)
系统中有一个文件名全是乱码的文件,根本无从下手进行删除(系统打不出乱码符号),这时候我们可以使用inode号来删除之。
1
2
3
4
[root@test]# ll -i
total 14694452
17956913 -rw-r--r-- 1test test 4096 Nov 24 16:24 1?.txt
[root@test]# find . -inum 17956913 -exec rm {} \;
经过测试,以上方法绝对可用
http://www.qytang.com
http://www.qytang.com/cn/list/28/610.htm
http://www.qytang.com/cn/list/28/595.htm
http://www.qytang.com/cn/list/28/583.htm
http://www.qytang.com/cn/list/28/582.htm
http://www.qytang.com/cn/list/28/576.htm
http://www.qytang.com/cn/list/28/523.htm
http://www.qytang.com/cn/list/28/499.htm
http://www.qytang.com/cn/list/28/488.htm
http://www.qytang.com/cn/list/28/466.htm
http://www.qytang.com/cn/list/28/463.htm
http://www.qytang.com/cn/list/28/458.htm
http://www.qytang.com/cn/list/28/455.htm
http://www.qytang.com/cn/list/28/447.htm