您的位置:首页 > 运维架构 > Linux

linux下rm命令删除文件名中包含特殊字符的文件(包括乱码文件名)

2011-06-24 12:41 1306 查看
1. 删除带“-”的文件名的方法

系统中有一个文件名为“-test”的文件,想要把他删除,按照一般的删除方法rm -test,会得到提示“invalid option(无效选项)”,这时可以用rm命令的“--”参数来解决问题。
#rm -- -test
如上所示便可以成功删除该文件

2. 删除包含其它特殊字符的文件

对于含有其它特殊字符的文件名,如<>!*等,可用
“/”转义符或“”双引号引起控制
如名为“>”或“*”
rm />
rm “*”

3. 删除系统打不出的乱码文件名

系统中有一个文件名全是乱码的文件,根本无从下手进行删除(系统打不出乱码符号),我们可以尝试以下的歪招
例如这个乱码的文件是luanma.txt,当然该例假设luanma便是各种奇形怪状的乱码,呵呵~~我们可以用rm *搞定
#cd xxx
进入乱码文件所在的目录
#rm *
这个命令表示删除该目录的所有文件,当然最终目的不是删除所有文件啦~~,输入命令回车后系统在删除每个文件都提示是否删除这个文件,其他不相关的文件全部都输入“n”回车跳过不删除,直到我们的目标出现
rm: remove regular empty file `luanma.txt'?
哈哈,这是我们果断地输入“y”,回车,将这个可恨的文件干掉!

不过这个方法要视系统而定,要谨慎使用,上面例子使用的是redhat,有些linux的发行版本rm命令没有提示功能,输入rm *就直接把所有文件干掉了,所以用之前先新建一个目录测试一下以防万一。

参考文献:

1. 精诚所至 金石为开/article/4228591.html

2. 扶凯,http://www.php-oa.com/2008/07/22/r.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: