linux下rm命令删除文件名中包含特殊字符的文件【转】
2016-05-25 18:13
721 查看
转自:http://blog.itpub.net/143526/viewspace-1060083/
1. 删除带“-”的文件名的方法
2. 删除包含其它特殊字符的文件
3. 删除系统打不出的乱码文件名
[@more@]
1. 删除带“-”的文件名的方法
大部分是由于误操作的原因,产生了一些 特殊字符的文件 如 -foo
rm --help
用法:rm [选项]... 目录...
Remove (unlink) the FILE(s).
-d, --directory unlink FILE, even if it is a non-empty directory
(super-user only; this works only if your system
supports `unlink' for nonempty directories)
-f, --force ignore nonexistent files, never prompt
-i, --interactive prompt before any removal
--no-preserve-root do not treat `/' specially (the default)
--preserve-root fail to operate recursively on `/'
-r, -R, --recursive remove the contents of directories recursively
-v, --verbose explain what is being done
--help 显示此帮助信息并离开
--version 显示版本信息并离开
要删除第一个字符为‘-’的文件 (例如‘-foo’),请使用以下其中一种方法:
rm -- -foo
rm ./-foo
请注意,如果使用 rm 来删除文件,通常仍可以将该文件恢复原状。如果想保证
该文件的内容无法还原,请考虑使用 shred。
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. 删除带“-”的文件名的方法
2. 删除包含其它特殊字符的文件
3. 删除系统打不出的乱码文件名
[@more@]
1. 删除带“-”的文件名的方法
大部分是由于误操作的原因,产生了一些 特殊字符的文件 如 -foo
rm --help
用法:rm [选项]... 目录...
Remove (unlink) the FILE(s).
-d, --directory unlink FILE, even if it is a non-empty directory
(super-user only; this works only if your system
supports `unlink' for nonempty directories)
-f, --force ignore nonexistent files, never prompt
-i, --interactive prompt before any removal
--no-preserve-root do not treat `/' specially (the default)
--preserve-root fail to operate recursively on `/'
-r, -R, --recursive remove the contents of directories recursively
-v, --verbose explain what is being done
--help 显示此帮助信息并离开
--version 显示版本信息并离开
要删除第一个字符为‘-’的文件 (例如‘-foo’),请使用以下其中一种方法:
rm -- -foo
rm ./-foo
请注意,如果使用 rm 来删除文件,通常仍可以将该文件恢复原状。如果想保证
该文件的内容无法还原,请考虑使用 shred。
2. 删除包含其它特殊字符的文件
对于含有其它特殊字符的文件名,如<>!*等,可用
“”转义符或“”双引号引起控制
如名为“>”或“*”
rm >
rm “*”
3. 删除系统打不出的乱码文件名
系统中有一个文件名全是乱码的文件,根本无从下手进行删除(系统打不出乱码符号),我们可以尝试以下的歪招
例如这个乱码的文件是luanma.txt,当然该例假设luanma便是各种奇形怪状的乱码,呵呵~~我们可以用rm *搞定
#cd xxx
进入乱码文件所在的目录
#rm *
这个命令表示删除该目录的所有文件,当然最终目的不是删除所有文件啦~~,输入命令回车后系统在删除每个文件都提示是否删除这个文件,其他不相关的文件全部都输入“n”回车跳过不删除,直到我们的目标出现
rm: remove regular empty file `luanma.txt'?
哈哈,这是我们果断地输入“y”,回车,将这个可恨的文件干掉!
不过这个方法要视系统而定,要谨慎使用,上面例子使用的是redhat,有些linux的发行版本rm命令没有提示功能,输入rm *就直接把所有文件干掉了,所以用之前先新建一个目录测试一下以防万一。
相关文章推荐
- CentOS系统配置solr
- 每日一linux命令(4)-------mkdir
- CentOS系统安装JDK
- 修改svn日志信息(svn使用linux服务器)
- Linux编程基础——GDB(设置断点)
- Linux ssh免密码登录设置
- Linux系统启动流程
- linux创建自定义回收站
- linux环境下FTP搭建(初)
- Centos下英文改中文及gcc,g++,gdb以及输入法的安装
- Gnu/Linux系统C编程之 - 系统与进程信息
- Linux 安装Python/PIL模块
- ssh登录 The authenticity of host 192.168.0.xxx can't be established.
- linux下导入、导出mysql数据库命令
- Linux下C语言实现文件遍历,支持嵌套和文件数量统计
- linux内核demo
- yum 安装对应内核版本的kernel-devel
- HTML5 websocket linux/c server
- 图解Linux命令实例
- 使用userdel命令删除Linux用户