在书中学习ruby的难点,我找到了退出程序的语法:
Process.exit(0)
Run Code Online (Sandbox Code Playgroud)
为什么参数0在exit这里传递,即使它传递另一个整数或不传递任何参数它是否有效?有什么意义0?
pie*_*ard 12
这是一个'退出代码'.
此退出代码在某些情况下具有特殊含义(例如,请参阅http://tldp.org/LDP/abs/html/exitcodes.html)
你可以传递你想要的任何东西,如果代码没有被捕获,这将没有任何影响.
这里'0'代表'一切正常!'
这是因为当子进程启动时(子进程在这种情况下是您的Ruby脚本),父进程(shell,系统等)可以等待它完成.
一旦完成,它可以告诉父进程它的执行状态是什么.零通常意味着执行已成功完成且没有任何错误.
例如,如果您从bash shell运行脚本,它将调用Process.exit(0),您可以使用$?变量检查它是否成功:
$ ./my_ruby.script # calls Process.exit(0)
$ echo $?
0 # ok, script finished with no errors.
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6085 次 |
| 最近记录: |