共计 623 个字符,预计需要花费 2 分钟才能阅读完成。
本文由 LinuxProbe.Com 团队成员 张宏宇 整理发布,点此报名Linux 培训。
今天遇到一个问题,一个文件名是“-MXV9.log”,直接用 rm 删除的时候就报错,如下:
[localhost]rm -MXV9.log
rm: illegal option -- M
rm: illegal option -- X
rm: illegal option -- V
rm: illegal option -- 9
rm: illegal option -- .
rm: illegal option -- l
rm: illegal option -- o
rm: illegal option -- g
Usage: rm [-Rfir] file ...
通常对这类文件都可以使用引号括起来删除,但是这里带引号删除也一样报 illegal option 的错。
找了一些资料后发现这种文件可以这样删除:先 ls -i 查到文件的 inode,然后用 find 命令删除
[localhost]ls -ilrt
100985 -rw-r--r-- 1 tbcs users 0 Apr 18 11:32 -MXV9.log
最前面一列的 100985 就是文件的 inode,在主机上执行如下命令即可删除文件
[localhost]find ./ -inum 100985 -exec rm {} \;
所以大家以后遇到文件名为乱码或者带有特殊字符的文件需要删除的情况下,可以尝试使用这种方法。
正文完
星哥玩云-微信公众号