【问题标题】:different ulimit when I run /bin/sh -c当我运行 /bin/sh -c 时不同的 ulimit
【发布时间】:2018-04-02 22:19:43
【问题描述】:
$ ulimit -n
1024
$ /bin/sh -c ulimit -n
unlimited

即使我指定了我正在使用的外壳:

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

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

【问题讨论】:

  • 可能你在shell启动文件中设置了soft ulimit。您可以添加 -x 以查看 shell 在启动时将执行的所有命令。

标签: shell ulimit


【解决方案1】:

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

比较输出:

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

然后运行:

bash -c 'ulimit -n'

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-10-08
    • 1970-01-01
    • 2015-12-23
    • 2021-07-05
    • 2011-01-30
    • 2013-01-29
    相关资源
    最近更新 更多