文件名包含特殊控制字符、非法編碼或亂碼時,rm 往往無法直接匹配刪除。利用 **inode 編號** 繞過文件名系統調用,配合 find -inum 精準定位並刪除,是處理此類「刪不掉的文件」的標準方案。
ls -lia
# 輸出示例:
# 54263996 -rw-rw-r-- 1 user group 0 Sep 20 16:57 ???*.?J]?...
第一列即 inode 編號(此處 54263996)。
find . -inum 54263996 -exec rm -rf {} \;
-inum:按 inode 編號匹配-exec rm -rf {} \;:對匹配結果執行刪除,{} 為佔位符ls -a
# 僅剩 . 和 ..
find -inum 直接讀取目錄項的 inode 域,繞過文件名解碼與 Shell 通配符展開,實現精準匹配。cat、file、stat 查看),防止誤刪關鍵文件。find . -inum N1 -o -inum N2 -exec rm -rf {} \; 批量處理。rm 會刪除目錄項但數據塊不釋放(佔用磁盤空間),需 lsof | grep deleted 找到進程重啟釋放。# 1. 使用文件名部分可打印字符通配
rm -i ./???*.?J]*
# 2. 交互式確認刪除(配合 inode)
find . -inum 54263996 -ok rm {} \;
# 3. 重命名後再刪(需文件系統支持)
mv $(find . -inum 54263996) ./tempname && rm ./tempname
ls -lia 獲取 inode → find -inum 精準匹配 → rm 強制刪除,三步解決所有亂碼文件名刪除難題。操作前驗證內容,謹慎執行,系統更穩健。
Linux 核心新增驅動程式完整教學:Kconfig、Makefile 與選單配置實戰
Linux 核心原始碼閱讀入門:原始碼目錄架構解析與新增系統呼叫實戰演練
coLinux 安裝與配置完整指南 (Windows 下運行 Linux)
Linux 磁盤分區、文件系統格式化與 RAID 設備實戰:fdisk、mkfs、mdadm 全流程
Linux 經典實用技巧八則:特殊檔名處理、Loadlin 直裝、X 死機急救、快速關機、rm -r、Tab 補全、滑鼠複製、Loadlin 批次啟動
Sublime Text 3 Build 3019 新功能亮點:跳轉編輯位置、HTML 自動完成增強、視網膜顯示優化、大檔案載入加速、API 擴展