Linux删除‘-’开头的文件

版权声明:原创作品,谢绝转载!否则将追究法律责任。 ————— 作者:kirin

先看两个特殊文件(以--开头)

[root@kirin ~]# ll
total 0
-rw-r--r-- 1 root root 0 Aug  3 08:59 -rf *
-rw-r--r-- 1 root root 0 Aug  3 09:00 -test

上面两个文件用普通方法无法删除

[root@kirin ~]# rm '-rf *' 
rm: invalid option -- ' '
Try 'rm ./'-rf *'' to remove the file ‘-rf *’.
Try 'rm --help' for more information.
[root@kirin ~]# rm -rf\ \* 
rm: invalid option -- ' '
Try 'rm ./'-rf *'' to remove the file ‘-rf *’.
Try 'rm --help' for more information.

删除方法,在文件名前加--

[root@kirin ~]# rm -rf -- '-rf *'
[root@kirin ~]# rm -rf -- -test
[root@kirin ~]# ll
total 0

两个文件已被删除

还有一些特殊的乱码文件,使用"rm -f --"这种方法还是删除不掉,这种情况就只能通过乱码文件的inode号码来删除了

[root@kirin ~]# ls -i
12345  *$'?426hhEThwcbryh~`23*(_)+=
[root@kirin ~]# find . -inum 12345 -exec rm -i {} \;
[root@kirin ~]# ll
total 0
posted @ 2022-06-27 21:07  kirin(麒麟)  阅读(1839)  评论(0编辑  收藏  举报
Δ