Linux下刪除亂碼或特殊字元檔案

大雄45發表於2020-03-07

今天遇到一個問題,一個檔名是“-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 {} \;

所以大家以後遇到檔名為亂碼或者帶有特殊字元的檔案需要刪除的情況下,可以嘗試使用這種方法。

本文地址:


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69955379/viewspace-2678922/,如需轉載,請註明出處,否則將追究法律責任。

相關文章