仅在从命令行调用脚本时运行代码
因此,当我从命令行调用我的脚本时,我希望它接受一个int并使用值执行某些操作:
ruby script.rb puts ARGV[0], etc...
但是,无论何时加载或需要脚本而不从命令行调用脚本,我都想完全跳过这部分代码。 如何检测脚本是通过命令行调用还是仅加载? 谢谢!
将它放在脚本的底部是很常见的:
if __FILE__==$0 # this will only run if the script was the main, not load'd or require'd end
因为我喜欢看到我文件顶部的主要操作,所以我通常会进行def run!
作为文件中的第一个方法,然后结束文件:
run! if __FILE__==$0