查找目录并删除其内容但不删除其本身

查找目录并删除其内容但不删除其本身

如何找到一个目录并删除其所有内容但不删除目录本身?

find -type -d -name 'Tmp' -exec rm -rf {} \;

但这也会删除“Tmp”目录。

提前致谢。

答案1

以下是实现此目的的一种方式:

find . -type d -name 'Tmp' -exec sh -c 'rm -r "$0"/*' {} \;

不过,我个人更喜欢用 bash 来做这件事:

shopt -s globstar
rm -r ./**/Tmp/*

通过这种方式,您还可以轻松确保删除隐藏的点文件:

shopt -s globstar dotglob
rm -r ./**/Tmp/*

相关内容