如何找到一个目录并删除其所有内容但不删除目录本身?
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/*