Shell variable - of limited size?

2019-04-27 13:54发布

问题:

Are shell variables limited in size? And which is the max size a variable can hold?

回答1:

Yes they can be. It depends on your OS and/or the shell flavours and versions. It is safer to use temporary files if you expect variable values to exceed 1-4kB.

EDIT

Also see What is the maximum size of an environment variable value?; this deals with the OS limitation on total environ size (cumulative size of all VARIABLE=VALUEs) which affects exported variables, but the shell itself may have its own limitations re. all (including non-exported) variable sizes.

This being said, unless you have portability in mind, GNU bash is relatively good about not limiting (non-exported) variables' sizes and can very likely hold arbitrary amounts of data as long as malloc can find sufficient memory and contiguous address space. :)



标签: shell