Bash
如何使用 Bash 刪除所有隱藏的文件和目錄?
顯而易見的解決方案會產生退出程式碼 1:
bash$ rm -rf .* rm: cannot remove directory `.' rm: cannot remove directory `..' bash$ echo $? 1
一種可能的解決方案將跳過“。” 和“..”目錄,但只會刪除名稱長度超過 3 個字元的文件:
bash$ rm -f .??*
rm -rf .[^.] .??*
應該抓住所有的情況。.??* 將僅匹配 3+ 個字元的文件名(如上一個答案中所述), .
$$ ^. $$將擷取任何兩個字元條目(除了..)。
find -path './.*' -delete
這匹配目前目錄中以 a 開頭的所有文件
.
並遞歸刪除這些文件。非隱藏目錄中的隱藏文件不會被觸及。如果您真的想擦除目錄中的所有內容,
find -delete
就足夠了。