ARG_MAX

来源:互联网 发布:淘宝旺旺号怎么注册 编辑:程序博客网 时间:2024/06/15 13:55
 

 UNIX的ARG_MAX参数

当我们执行某些命令有时候会报“Argument list too long”错误,例如当当前目录文件很多时执行mv * 或rm *,该错误表示执行命令的参数太长,超过系统允许的最大值,这个值通过ARG_MAX参数控制,在AIX5中系统默认的值是24576,可以通过 getconf ARG_MAX可查看系统当前设置的值。

      出现这种情况时,通常有两种解决办法:

      1)更改命令执行方式。例如执行rm * 时使用如下命令替换:find . -name "*" |xargs rm {}

      2)修改ARG_MAX的大小:使用命令lsattr -El sys0 -a ncargs查看ncargs占有字节,getconf ARG_MAX 查看ARG_MAX设置值大小,chdev -l sys0 -a ncargs=8 表示设置ncargs占用8字节,增加这个值就可以修改ARG_MAX参数的设置了。