分页: 1 / 1

如何使用rm删除极大量文件

发表于 : 2007-06-26 14:53
ttand
rm *
bash: /bin/rm: Argument list too long
不想山文件夹
怎么解决

发表于 : 2007-06-26 15:06
shizhi21cn
for files in $1/*; do
rm files
done

发表于 : 2007-06-26 15:10
ttand
岂不是 rm 了n次。。。恐怖阿
还有没有更简便的方法阿

发表于 : 2007-06-26 15:14
shizhi21cn
find /dir/ * |xargs rm

发表于 : 2007-06-26 15:15
bones7456

代码: 全选

find . -type f -name "*" -exec rm {} \;

发表于 : 2007-06-26 15:18
iblicf
try this :

代码: 全选

find . -type f -exec rm {} \;

发表于 : 2007-08-13 10:59
liangxgz

代码: 全选

find -exec rm -rf \{} \;
这个命令会提示很多错误.但是不用管.最终还是会达到目的的

发表于 : 2007-08-13 11:01
eexpress
直接开rox吧。这么麻烦。

发表于 : 2007-08-16 16:49
yhntgbty
我觉的最简单的就是删除文件夹后再mkdir

发表于 : 2007-08-16 23:43
gregorian
感觉还是用for循环来做比较好

发表于 : 2007-08-17 10:31
yhntgbty
使用for的话还是执行了n多个rm,简单的使用"rm 所在文件夹" 然后"mkdir 所在文件夹" 应该是最快的

发表于 : 2007-08-17 10:37
yhntgbty
刚才做了一个测试 总共18150个文件 使用rm *提示“-bash: /bin/rm: Argument list too long”
然后使用for循环,用了31.067S删除完。 如果使用rm 文件夹 再mkdir 文件夹 仅使用了0.607秒S
差距太多了 近50倍.
BTW: 18150个文件都是空文件。

发表于 : 2007-08-17 10:41
nihui
直接删除所在文件夹多好,反正是“*”的~
对着文件删除反而会因为匹配 * 浪费时间。。 :wink: