2011年4月9日星期六

Linux下执行指令时出现“Argument list too long”错误的解决办法

 

转自:http://www.hacder.cn/archives/662.html

当转载你Linux下试图传递太多参数给一个系统命令(ls *; cp *; rm *; cat *; etc…)时,

就会出现”Argument list too long”错误,这个是Unix系统一直以来都有的限制。察看这个限制可以通过命令

  1. getconf ARG_MAX

得到。解决的办法 可以使用xargs。

  1. find . -print0 | xargs -0 chown nobody:nobody
  2. find . -print0 | xargs -0 rm

(注意。上面的0是数字,不是字母o)

 

另外,也可以用下面的办法来解决:

  1. find $directory -type f -name ‘*’ -exec mv {} $directory2/. \;

没有评论: