可以将多少数据作为命令行参数传递?

时间:2009-09-26 00:47:42

标签: linux command-line-arguments

在Linux下生成进程时,可以将多少个字节作为命令行参数发送?

3 个答案:

答案 0 :(得分:6)

好文章描述了这个问题:

<强> http://www.in-ulm.de/~mascheck/various/argmax/

答案 1 :(得分:5)

gahooa在http://www.in-ulm.de/~mascheck/various/argmax/建议了一篇好文章,但是如果那个页面有一天消失了,那么问题就在于:要找到命令行参数的最大长度,请尝试下列其中一项

* command: getconf ARG_MAX
* system call: sysconf(_SC_ARG_MAX)
* system header: ARG_MAX in e.g. <[sys/]limits.h>

答案 2 :(得分:4)

这个片段会告诉你。

#include <stdio.h>
#include <unistd.h>

int main(int argc, char** argv)
{
    const long value = sysconf(_SC_ARG_MAX);
    printf("ARG_MAX: %ld\n", value);
}