linux shell之刪除當(dāng)前文件夾不包含文件1和文件2的其他所有文件

1 問題

刪除當(dāng)前文件夾不包含文件1和文件2的其他所有文件,這個當(dāng)前文件夾里面可以包含子文件夾,然后子文件夾里面也有文件1和文件2,但是這里的文件1和文件2也不應(yīng)該被刪除。


 
2 解決辦法

  可以用如下shell命令都行

find . -type f -not -name "1.txt" -not -name "2.txt" -exec rm -rf {} \;

find . -type f -not -name "1.txt" -not -name "2.txt" | xargs rm -rf

find . -type f  | grep -v 1.txt | grep -v 2.txt | xargs rm -rf

上面3個命令都可以,當(dāng)我們用除某些文件以外可以使用find和-not -name搭配,也可以使用find和grep -v搭配。



 作者:chen.yu
深信服三年半工作經(jīng)驗(yàn),目前就職游戲廠商,希望能和大家交流和學(xué)習(xí),
微信公眾號:編程入門到禿頭 或掃描下面二維碼
零基礎(chǔ)入門進(jìn)階人工智能(鏈接)