命令行参数限制ARG_MAX, ncargs

本文介绍了如何解决执行命令时出现的“Argumentlisttoolong”错误,并提供了在不同操作系统如AIX、RHEL5和RHEL6中查看及调整ARG_MAX参数的方法。
执行命令有时候会报“Argument list too long”,例如当前目录文件很多时执行mv * 或rm *,该错误表示执行命令的参数太长,超过系统允许的最大值,这个值通过ARG_MAX参数控制。
可以通过 getconf ARG_MAX可查看系统当前设置的值。
 
随便在几台机器上跑了下:
AIX:2097152
虚拟机RHEL5:131072
RHEL6:2621440
 
修改ARG_MAX的大小,以AIX举例:
1.使用命令lsattr -El sys0 -a ncargs查看ncargs占有字节,
输出结果:ncargs 512 ARG/ENV list size in 4K byte blocks True
2.getconf ARG_MAX 查看ARG_MAX设置值大小,
2097152
3. 调整ncargs占用字节:
chdev -l sys0 -a ncargs=8 表示设置ncargs占用8字节,
增加这个值就可以修改ARG_MAX参数的设置了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值