Files
刪除包含無效字元的文件夾(-encoding)
在我的 Linux Mint 18.3 安裝中,我的語言環境設置出現問題,導致生成了名稱中包含無效編碼的文件夾。
我現在想刪除所說的文件夾,但我不知道該怎麼做。我嘗試使用我的文件管理器 (Dolphin) 以及終端 (
sudo rmdir <folder name>
),但兩個命令都失敗,聲稱給定文件夾不存在。但是,它仍會顯示在文件管理器中並通過
ls
命令顯示。sudo rmdir Einf�hrung in die Biochemie/ rmdir: failed to remove 'Einf�hrung': No such file or directory rmdir: failed to remove 'in': No such file or directory rmdir: failed to remove 'die': No such file or directory rmdir: failed to remove 'Biochemie/': No such file or directory
目錄的名稱是從
ls
.
您可以使用
*
sudo rm -rfi Ein*
或者
sudo rm -rfi *Biochemie
如果沒有其他目錄與該模式匹配,在這種情況下,您必須選擇一個唯一的模式。
您也可以使用
rmdir
代替rm
.正如Jeff Schaller指出的那樣,
-i
如果模式匹配不被刪除的目錄(通過提示每次匹配確認),該選項將有所幫助。
在這種情況下,像 Thunar 這樣的可視文件管理器非常方便。
如果你的系統沒有圖形使用者界面,像午夜指揮官這樣的工具會很有幫助。
在簡單的情況下,使用命令完成可能就足夠了。
rm -i Einf→→
其中 → 應象徵 Tab 鍵,或者,如 ManOv 所示,也許萬用字元就足夠了:
rm 'Einf?hrung in die Biochemie' rm 'Einf*hrung in die Biochemie'
如果您不允許安裝這些現代的東西, find 可能會有所幫助:
和
ls -la Ein*
您可以調查文件屬性,如大小、修改時間、所有者、屬性……以供查找:
find -maxdepth 1 -type f -name "Einf*hrung *chemie" -mtime -4 -mtime +2 -size +2000 -size -2200
如果結果只是那個特定的文件,請添加刪除開關。這不適用於各種查找,但適用於 GNU-find:
find -maxdepth 1 -type f -name "Einf*hrung *chemie" -mtime -4 -mtime +2 -size +2000 -size -2200 -delete
對於其他查找版本,您也會在這裡找到很多範例,如何刪除文件。