摘自linux下rm命令刪除檔名中包含特殊字元的檔案
1. 刪除帶「-」的檔名的方法
大部分是由於誤操作的原因,產生了一些 特殊字元的檔案 如 -foo
rm --help
用法:rm [選項]... 目錄...
remove (unlink) the file(s).
-d, --directory unlink file, even if it is a non-empty directory
(super-user only; this works only if your system
supports `unlink' for nonempty directories)
-f, --force ignore nonexistent files, never prompt
-i, --interactive prompt before any removal
--no-preserve-root do not treat `/' specially (the default)
--preserve-root fail to operate recursively on `/'
-r, -r, --recursive remove the contents of directories recursively
-v, --verbose explain what is being done
--help 顯示此幫助資訊並離開
--version 顯示版本資訊並離開
要刪除第乙個字元為『-』的檔案 (例如『-foo』),請使用以下其中一種方法:
rm -- -foo
rm ./-foo
請注意,如果使用 rm 來刪除檔案,通常仍可以將該檔案恢復原狀。如果想保證
該檔案的內容無法還原,請考慮使用 shred。
2. 刪除包含其它特殊字元的檔案
對於含有其它特殊字元的檔名,如<>!*等,可用
「\」轉義符或「」雙引號引起控制
如名為「>」或「*」
rm \>
rm 「*」
3. 刪除系統打不出的亂碼檔名
系統中有乙個檔名全是亂碼的檔案,根本無從下手進行刪除(系統打不出亂碼符號),我們可以嘗試以下的歪招
例如這個亂碼的檔案是luanma.txt,當然該例假設luanma便是各種奇形怪狀的亂碼,呵呵~~我們可以用rm *搞定
#cd ***
進入亂碼檔案所在的目錄
#rm *
這個命令表示刪除該目錄的所有檔案,當然最終目的不是刪除所有檔案啦~~,輸入命令回車後系統在刪除每個檔案都提示是否刪除這個檔案,其他不相關的檔案全部都輸入「n」回車跳過不刪除,直到我們的目標出現
rm: remove regular empty file `luanma.txt'?
哈哈,這是我們果斷地輸入「y」,回車,將這個可恨的檔案乾掉!
不過這個方法要視系統而定,要謹慎使用,上面例子使用的是redhat,有些linux的發行版本rm命令沒有提示功能,輸入rm *就直接把所有檔案乾掉了,所以用之前先新建乙個目錄測試一下以防萬一。
linux下刪除檔名亂碼檔案
linux下通過rm命令來刪除檔案,但是如果要刪除檔名亂碼的檔案,就不能直接使用rm命令了,因為壓根就無法輸出檔名來。不過借助find命令可以實現對其刪除。在linux下對於每個檔案都乙個對應的不變的inode號,使用 ls li 可以檢視到檔案的inode號,同時find可以根據inode號來查詢...
Linux命令(四)刪除檔案 rm
使用者可以使用 rm 命令刪除不需要的檔案。rm 可以刪除檔案或目錄,並且支援萬用字元。如果目錄中存在其它檔案則會遞迴刪除。刪除軟鏈結只是刪除鏈結,對應的檔案或目錄不會被刪除。軟鏈結類似於 windows 系統中的快捷方式。如果刪除硬鏈結後檔案存在其它的硬鏈結檔案,內容任可以訪問。使用 rm 命令一...
linux下如何恢復rm命令刪除的檔案
在linux下rm rf 是乙個很可怕的命令,因為下達這個命令意味著一旦刪除的檔案是無法挽回的,事實是如此嗎?真的沒有補救措施了嗎?答案是委婉了,在一定的條件下可以補救,大家可能熟悉windows下刪除的補救措施是通過相關的軟體實現的,在linux下同樣可以做到補救,但是有個大前提 就是不能有覆蓋的...