Debian
刪除名稱以“?”開頭的文件在命令行中
我在 Debian stable 和 Cinnamon DE 下執行,我有一些文件想用命令行刪除(現在我用 Nemo 刪除這些文件)。
例如,這些
.txt
文件以“?”開頭 在外殼和尼莫這個’?替換為輸入:$@debian: ls ssolveIncpUL46pK ?ssolveIncpUL46pK.txt
我試過:
rm ?ss* rm \?ss* rm \ ss*
字元不是問號。該
ls
實用程序會將不可列印字元替換為?
. 還不清楚不可列印字元是否真的是文件名中的第一個字元,或者在此之前是否可能有一個或多個空格。你想刪除這兩個文件嗎,你可以匹配“壞部分”,
*
然後更緊密地指定其餘的可見文件名:rm -i ./*ssolve*
這將首先將給定模式擴展到所有匹配它的文件名,然後
rm
將它們刪除。如果您不想刪除與上述短模式匹配的文件,請更具體並指定文件名的較長部分,例如使用rm -i ./*ssolveIncpUL46pK*
這是假設您與要刪除的文件位於同一目錄中。
使其在實際刪除任何內容之前要求確認的
-i
選項。rm
刪除此類文件的適當方法是使用文件的
inode
值。使用以下命令獲取
inode
值ls -li 12582925 -rw-r--r-- 1 root root 646 May 23 02:19 ?ssolveIncpUL46pK.txt
入圍結果的第一個欄位是 inode 值。
然後使用 find 命令刪除文件 wrt inode。
find . -inum 12582925 -exec rm -i {} \;