2012-07-11 178 views

回答

9
rm -i <directory>/* 

这应该做的伎俩

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

+0

有没有办法删除而不提供路径?从CD-D到你的目录? – BIOS 2012-07-11 09:56:35

+0

当然,您可以随时cd到您的目录,然后执行“rm -i *”请注意,-i标志将强制确认每次删除,是否仅仅为了安全起见(如果您错误放置/在你的命令行中,你提供了一个-r标志......) – BigMike 2012-07-11 10:00:06

+0

我正在使用rm -r *,但它要求对每个文件删除进行确认。要阻止这是rm -rf *是?试图从当前目录中删除全部。 – BIOS 2012-07-11 10:11:03

5

尝试

rm -r yourDirectory/* 

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

+0

有没有办法删除而不提供路径?从CD-D到你的目录? – BIOS 2012-07-11 09:56:23

+0

如果您已经在目录中,只需键入 “rm -r *” – Amxx 2012-07-11 09:57:56

+0

我不会建议unix新手使用-r开关,如果OP在命令行中错误地放置了/,该怎么办? – BigMike 2012-07-11 10:00:56

2

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

0

您可以使用rm -r /UrDir/*.* 这将忽略子目录

0

的文件这将帮助你,

rm path/* 

如:

rm ../mydir/* 

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

3

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

尽管通配符rm会面对太多文件(“参数列表太长”),但无论有多少文件都可以使用。

你也可以把它删除的文件只,但保留所有子目录:

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

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

+0

这是保存目录结构的最佳答案。 – 2016-02-11 16:08:37

+0

这是最接近正确的答案,因为其他建议的解决方案忽略隐藏文件(以'。'作为前缀)。但是,如果不指定'-mindepth 1','find'命令也会对命令行参数起作用。有了这个补充,解决方案是正确的。 – Parakleta 2017-12-12 05:09:51

1

如果您在目录要删除所有文件,然后下面的命令正常工作:如果你想删除所有文件以及所有目录,这意味着所有的东西,然后尝试

rm * 
0

这个:

rm -rf * 
相关问题