如何可靠地发现Ruby可执行文件的完整路径?

Avd*_*vdi 8 ruby scripting

我想写一个脚本,打包成一个gem,它将修改它的参数,然后exec用修改后的参数修改一个新的ruby进程.换句话说,类似于shell脚本,它修改了它的参数,然后执行了exec $SHELL $*.为了做到这一点,我需要一种健壮的方法来发现正在执行当前脚本的ruby可执行文件的路径.我还需要获取传递给当前进程的完整参数 - Ruby参数和脚本参数.

Avd*_*vdi 6

Rake源代码是这样的:

  RUBY = File.join(Config::CONFIG['bindir'], Config::CONFIG['ruby_install_name']).
    sub(/.*\s.*/m, '"\&"')
Run Code Online (Sandbox Code Playgroud)


小智 5

如果你想在linux上检查:读取文件:

  • /proc/PID/exe
  • /proc/PID/cmdline

其他有用的信息可以在 /proc/PID 目录中找到