Scripting
刪除所有隱藏文件
是否有一個命令可以刪除目錄中的所有隱藏文件,包括其子目錄?
我需要它來僅刪除隱藏文件,而不是正常文件。
find yourstartingpath/ -name ".*" -type f -exec rm {} \; -print
-print 僅當您需要列出它們時
例子 :
francois@zaphod:~/tmp/test$ touch {a,b,c,a/1,a/2,b/2}/.hid francois@zaphod:~/tmp/test$ touch {a,b,c,a/1,a/2,b/2}/nothid francois@zaphod:~/tmp/test$ tree . ├── a │ ├── 1 │ │ └── nothid │ ├── 2 │ │ └── nothid │ └── nothid ├── b │ ├── 2 │ │ └── nothid │ └── nothid └── c └── nothid 6 directories, 6 files francois@zaphod:~/tmp/test$ find . -name ".*" -type f -exec rm {} \; -print ./b/.hid ./b/2/.hid ./a/1/.hid ./a/.hid ./a/2/.hid ./c/.hid francois@zaphod:~/tmp/test$ tree . ├── a │ ├── 1 │ │ └── nothid │ ├── 2 │ │ └── nothid │ └── nothid ├── b │ ├── 2 │ │ └── nothid │ └── nothid └── c └── nothid 6 directories, 6 files francois@zaphod:~/tmp/test$
所有 nothid(den) 文件都保持不變
請:切勿在未先備份數據的情況下啟動 for 循環或 find … exec rm 命令 :)