我想写一个脚本,打包成一个gem,它将修改它的参数,然后exec
用修改后的参数修改一个新的ruby进程.换句话说,类似于shell脚本,它修改了它的参数,然后执行了exec $SHELL $*
.为了做到这一点,我需要一种健壮的方法来发现正在执行当前脚本的ruby可执行文件的路径.我还需要获取传递给当前进程的完整参数 - Ruby参数和脚本参数.
Rake源代码是这样的:
RUBY = File.join(Config::CONFIG['bindir'], Config::CONFIG['ruby_install_name']). sub(/.*\s.*/m, '"\&"')