我有一个直接调用/caching有大约一百万个文件。
我重构了caching系统,将caching文件放入/ cache目录中的不同文件夹中。 新的caching文件已经被写入这些子文件夹。 所以我想删除/ cache目录里的所有不在任何子文件夹中的文件。
我将如何在SSH中做到这一点?
你可以用find
命令来完成。
find /cache -maxdepth 1 -type f -exec rm -rf {} \;
我build议看一下在执行find
和-exec rm
之前要删除的文件列表:
find /cache -maxdepth 1 -type f
这将给你的文件列表而不删除它们。 再次; 请谨慎使用与-exec rm
组合,我不能够清楚:)。
你想删除caching文件夹中的所有文件,而不删除caching文件夹中的目录中的文件? 如果是,可以使用find: find /cache -maxdepth 1 -type f -delete
-maxdepth限制深度,不要删除文件夹中的文件