删除特定文件夹的文件和子目录

删除特定文件夹的文件和子目录

我需要删除特定文件夹中的文件和子目录,但不删除该文件夹本身。

我正在使用以下命令:

find . -type d -depth -mtime +7 -exec rm -rf {} \;

但它会抛出以下错误消息:

rm:拒绝删除“.”或“..”目录:跳过“.”

我应该避免或处理此错误消息的正确命令是什么?是否因为选项而发生“-深度”在我的寻找命令?

Linux 版本:
NAME="Red Hat Enterprise Linux Server"
VERSION="7.1 (Maipo)"

答案1

如果您有/path/to/folder,并且想要删除其中的非隐藏文件,但不删除该文件夹,只需运行:

rm -rf /path/to/folder/*

请注意,这不会删除隐藏文件(以点开头的文件)。

鉴于您拥有正确的权限并且不需要始终在系统上使用此文件夹,您可以简单地将其删除并创建一个新的空文件夹:

rm -rf /path/to/folder; mkdir /path/to/folder

相关内容