记录rm删除文件出错/bin/rm:Argument list too

下午在测试linux能创建多少个文件与inode的关系,用rm删除文件出现了错误:/bin/rm:Argument list too。

为什么呢?

上网查找,只有一个回答,据说是Linux 内核中所有 exec 系函数(execl, execlp, execle 等)最终调用的都是 execve() ,而execve 是通过一块 128k 的内存空间来保存用以传递给新进程的命令参数和环境变量。当像 rm 这些命令产生的命令行参数超过 128k 的时候, Linux kernel 就报 E2BIG 错误了。

解决:

当然是删掉了,就是少量少量删。网上比较简单的是,用xargs命令(详解http://blog.csdn.net/zhangfn2011/article/details/6776925),ls| xargs -n 10 rm -rf  ,ls当然是输出所有的文件名(用空格分割) xargs就是将ls的输出,每10个为一组(以空格为分隔符),作为rm -rf的参数 也就是说将所有文件名10个为一组,由rm -rf删除,这样就不会超过命令行的长度了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值