[Linux] BASH 的 exit 回傳值範圍
之前都在寫 Windows 程式的時候,因為也不常需要去接其他程式的執行回傳值,
因此一直也沒有在意過它的範圍(因為通常都是回傳個 0, -1, 1, 2 之類的)…
今天在 Linux 上面寫 python 程式時,才突然發現回傳值是有範圍限制的!
像我原本在 python 裡面,很高興的寫 exit(10001) 之類的程式,
卻發現在 Linux bash 上,用 echo $? 去看回傳值時,
值變成了 17,並不是我想像的 10001?!
查了一下,原來回傳值有 0-255 的範圍限制…
因此原本的 10001 = 16進位的 2711,
被截成 byte 之後就是 16 進位的 11 = 10進位的 17,
真相總算大白囉~~
(本頁面已被瀏覽過 240 次)