linux下rm命令刪除檔名中包含特殊字元的檔案

2021-10-03 23:44:32 字數 1580 閱讀 8906

摘自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下同樣可以做到補救,但是有個大前提 就是不能有覆蓋的...