我想删除当前目录树中的所有文件,除外save
。我运行了以下命令:
find . \( -name save -prune \) -o -type f -ls | grep /save/
它没有发现。但是当我运行以下命令时:
find . \( -name save -prune \) -o -type f -delete
/ save /中的所有那些文件都消失了。我想念什么?
我的痛苦是您的预防。
—
奥修斯'16
1000谢谢你。代码(通常是?)以神秘的方式起作用……
—
Olivier Dulac
@lesmana我赞成您的回答。不幸的是,我的find版本没有给我这么好的警告:(
—
Otheus
mv save/ ../some/safer/location
在这种“通用”删除命令之前使用一个简单的命令(...当然,在您发帖之前,我会做同样的检查并遇到同样的麻烦!)。现在,为文件位于^^上的文件系统找到一个不错的“取消删除”