Shell最大支持定义一个多长的字符串变量?
目前系统使用Linux+Sybase做核心业务,其中涉及到对超长字符串(数万字节以上/字符串)的操作(如提取子串,插入子串……)。Sybase虽然本身有很多便捷的字符串操...
目前系统使用Linux+Sybase做核心业务,其中涉及到对超长字符串(数万字节以上/字符串)的操作(如提取子串,插入子串……)。
Sybase虽然本身有很多便捷的字符串操作函数,但这些函数都只能操作16384字节以内的字符串,超过这个限额就报错了。因此我只能考虑把这些超长字符串的操作放到Linux上进行。
请问Linux的字符串有没有像Sybase那样的有最大长度的限制呢,即Linux能否为变量赋一个数万字节的字符串,并对这种超长字符串作常规操作呢?
谢谢! 展开
Sybase虽然本身有很多便捷的字符串操作函数,但这些函数都只能操作16384字节以内的字符串,超过这个限额就报错了。因此我只能考虑把这些超长字符串的操作放到Linux上进行。
请问Linux的字符串有没有像Sybase那样的有最大长度的限制呢,即Linux能否为变量赋一个数万字节的字符串,并对这种超长字符串作常规操作呢?
谢谢! 展开
1个回答
展开全部
要看你怎么用吧,用作shell命令参数,肯定有限制啊
getconf ARG_MAX
或者
xargs --show-limits
查看你的系统的限制
getconf ARG_MAX
或者
xargs --show-limits
查看你的系统的限制
追问
追答
恩,xargs那个是作为命令参数string length限制
如果单纯作为shell变量,限制是所有的环境变量加在一起,不大于1/4 allowed stack size.(如果你的kernel是2.6.23以上),你可以man execve查看Limits on size of arguments and environment这一段
你系统stack size 你可以通过ulimit -s来查看,单位是kb
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询