zhanglintc
V2EX  ›  问与答

`exit 999`, `echo $?` 后变成 `231`

  •  
  •   zhanglintc · Apr 28, 2022 · 2254 views
    This topic created in 1653 days ago, the information mentioned may be changed or developed.
    ➜ lane@vbox#2 ~ echo 'exit 999;' > a.sh
    ➜ lane@vbox#2 ~ chmod u+x a.sh
    ➜ lane@vbox#2 ~ ./a.sh; echo $?
    231
    

    如上,999 会变成 231 ,是因为 $? 的上限有限制是吧?具体的资料可以参考哪里呢?

    4 replies  •  2022-04-28 14:26:34 +08:00
    Trim21
    Trim21
    Apr 28, 2022 via Android
    1
    exit code 范围是 0-255

    应该是 999mod256=231
    owwlo
    owwlo
    Apr 28, 2022 via iPhone
    2
    返回 code 是 8 位的应该,999 二进制 1111100111 取后 8 位 231
    zhanglintc
    zhanglintc
    OP
    Apr 28, 2022
    3
    @Trim21 @owwlo 嗯,实验下来的确是的。就是不知道能不能在哪里看到具体的定义说 exit code 最大 8 位。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   3958 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 09:51 · PVG 17:51 · LAX 01:51 · JFK 04:51
    ♥ Do have faith in what you're doing.