Какова максимальная длина аргументов командной строки в gnome-terminal?

Какова максимальная длина аргументов командной строки в gnome-терминал?

... а есть ли системная переменная среды, которая сообщает об этом значении?

38
задан 19 November 2010 в 23:05

3 ответа

Я действительно не знаю о gnome-Terminal, но оболочка имеет не «фиксированный» предел, а предел стека.

Однако существует жесткое ограничение для каждого аргумента, равное 128 КБ, что не должно быть проблемой, если вы не используете «очень очень очень длинные аргументы ....».

Подробнее об этом можно прочитать здесь:

http://www.mail-archive.com/bug-make@gnu.org/msg05522.html

0
ответ дан 19 November 2010 в 23:05

Ответ приходит из значения sysconf ARG_MAX. Чтобы проверить это в вашей системе:

getconf ARG_MAX

Для меня это сообщает 2097152. Для более подробной информации обратитесь к справочной странице:

man sysconf

Чтобы получить это внутри программы, например:

#include <unistd.h>
...
printf("%ld\n", sysconf(_SC_ARG_MAX));
0
ответ дан 19 November 2010 в 23:05

xargs знает. В моей системе

$ 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
0
ответ дан 19 November 2010 в 23:05

Другие вопросы по тегам:

Похожие вопросы: