CentOS 用 inode number 刪除亂碼檔案 , 目錄

2016-11-12 CentOS

這兩天在其中一台伺服器上看到一個不知道從哪來的亂碼檔案,大概不曉得是哪一個開發者上傳的目錄出現錯誤

 

$ ls -l

drwxr-xr-x  2 root   root       4096 Mar 19  2016 -?ʦ??-?
drwxr-xr-x  2 root   root       4096 Mar 19  2016 ??-?
drwxr-xr-x 31 root   root       4096 Mar 19  2016 admin
drwxr-xr-x 29 root   root       4096 Mar 19  2016 ??+? admin

 

 

如果直接用 rm 刪除會出現這樣的錯誤

$ rm -?ʦ??-?
rm: 不適用的選項 -- ?
Try `rm ./-?ʦ??-?/' to remove the file ‘-\260ʦ\242\313-\253/’.

# or use "\"
$ rm \-\?\ʦ\?\?\-\?
rm: 不適用的選項 -- ?
Try `rm ./-?ʦ??-?' to remove the file ‘-\260ʦ\242\313-\253’.

 

用 inode number 來刪除指定檔案

先用 ls -i 查詢 inode number

$ ls -i 
2500089 -?ʦ??-? 
2890693 ??-? 
2490549 admin 
524684 ??+? admin

 

用 find 刪除檔案或目錄

# delete file
$ find -inum 2890693 -delete

# delete directly
$ find -inum 2890693 -exec rm -rf {} \;

 

 

給 Mr. 沙先生一點建議

彙整

分類

展開全部 | 收合全部

License

訂閱 Mr. 沙先生 的文章

輸入你的 email 用於訂閱