What is the maximum length of command line arguments in gnome-terminal?
What is the maximum length of command line arguments in gnome-terminal?
… and is there a system environment variable which reports this value?
I don’t really know about gnome-terminal, but the shell has not a ‘fixed’ limit, but the limit of the stack.
However there is an hardcode limit per-argument that is 128KB, that should not be a problem if you don’t use ‘very very very long arguments….’.
You can read more about this here:
xargs
knows. On my system,
$ xargs --show-limits
Your environment variables take up 2572 bytes
POSIX upper limit on argument length (this system): 2092532
POSIX smallest allowable upper limit on argument length (all systems): 4096
Maximum length of command we could actually use: 2089960
Size of command buffer we are actually using: 131072
The answer comes from the sysconf value ARG_MAX
. To examine it on your system:
getconf ARG_MAX
For me, this reports 2097152
. For more details check the manpage:
man sysconf
To get this inside a program, for example:
#include <unistd.h>
...
printf("%ldn", sysconf(_SC_ARG_MAX));