Shell variable - of limited size?
Are shell vari开发者_如何学Cables limited in size? And which is the max size a variable can hold?
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=VALUE
s) which affects export
ed variables, but the shell itself may have its own limitations re. all (including non-export
ed) variable sizes.
This being said, unless you have portability in mind, GNU bash
is relatively good about not limiting (non-export
ed) variables' sizes and can very likely hold arbitrary amounts of data as long as malloc
can find sufficient memory and contiguous address space. :)
精彩评论