原文來源:
https://stackoverflow.com/questions/4325216/remove-all-files-except-some-from-a-directory
使用 sudo rm -r能夠刪除所有的文件,但是我想保留以下幾個文件:
textfile.txt
backup.tar.gz
script.php
database.sql
info.txt
我該怎麼做?
添加不需要刪除的文件名,在 -not -name 後面
find [path] -type f -not -name 'textfile.txt' -not -name 'backup.tar.gz' -delete
如果你不想一一列舉不想刪除的所有文件,你可以使用更爲通用的方法----使用正則表達式
find [path] -type f -not -name 'EXPR' -print0 | xargs -0 rm --
具體如下:
比方說,我想刪除當前文件夾下所有不是txt的文件
find . -type f -not -name '*txt' -print0 | xargs -0 rm --
print0 和 -0 參數是需要的,如果想要刪除掉這些文件佔用的空間的話。