运行/ bin / sh -c时不同的ulimit

时间:2018-04-02 22:19:44

标签: shell ulimit

$ ulimit -n
1024
$ /bin/sh -c ulimit -n
unlimited

即使我指定了我正在使用的shell:

$ echo $SHELL
/bin/bash
$ /bin/bash -c ulimit -n
unlimited

为什么ulimit没有给我相同的价值?

1 个答案:

答案 0 :(得分:2)

这是因为您在没有参数的情况下运行ulimit-n不是正在执行的命令的一部分,而是变为$0。因此,unlimited是最大文件大小

比较输出:

bash -c 'echo hello'  # says hello
bash -c echo hello    # blank line

然后运行:

bash -c 'ulimit -n'