9

我正在寻找一个 unix 命令来删除目录中的所有文件而不删除目录本身。(注意该目录不包含子目录)。

4

8 回答 8

10
rm -i <directory>/*

这应该可以解决问题

编辑:添加 -i 以防万一(安全第一)。目录应该是完整路径或相对路径(例如/tmp/foo../trash/stuffs

于 2012-07-11T09:52:14.993 回答
6

尝试

rm -r yourDirectory/*

它会删除“yourdirectory”目录中的所有文件

于 2012-07-11T09:53:17.270 回答
4

您可以使用find /path/to/your/folder/ -delete删除该文件夹中的所有内容。

虽然通配符rm会因文件过多而中断(“参数列表太长”),但无论有多少文件,这都有效。

您还可以使其仅删除文件但保留任何子目录:

find /path/to/your/folder/ -type f -delete

您还可以指定任何其他标准find支持来限制“结果”。

于 2014-02-13T08:05:52.650 回答
2

rm * 如果要从特定目录中删除,可以使用从当前目录中删除所有文件,键入rm /path/*

于 2012-07-11T09:55:12.173 回答
1

如果您位于要删除所有文件的目录中,则以下命令可以正常工作:

rm *
于 2014-03-30T18:03:24.380 回答
1

如果您想删除所有文件以及所有表示所有内容的目录,请尝试以下操作:

rm -rf *
于 2017-10-26T06:22:33.497 回答
0

你可以使用rm -r /UrDir/*.* 这将忽略子目录中的文件

于 2013-04-28T08:36:00.877 回答
0

这会帮助你,

rm path/*

例如:

rm ../mydir/*

在这个命令中,如果mydir有任何子目录!它将引发错误消息并跳过该子目录并删除主目录中的其余文件。

于 2013-11-27T07:17:15.543 回答