linux shell之删除当前文件夹不包含文件1和文件2的其他所有文件

1 问题

删除当前文件夹不包含文件1和文件2的其他所有文件,这个当前文件夹里面可以包含子文件夹,然后子文件夹里面也有文件1和文件2,但是这里的文件1和文件2也不应该被删除。

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个命令都可以,当我们用除某些文件以外可以使用find和-not -name搭配,也可以使用find和grep -v搭配。

(0)

相关推荐