Rubyで完全なコマンドラインを取得するにはどうすればよいですか?
$ rails c
> $0
=> "script/rails"
> ARGV
[]
> `ps -eo "%p|$|%a" | grep '^\\s*#{Process.pid}'`.strip.split("|$|")[1]
=> "/home/sam/.rvm/rubies/ruby-1.9.3-p194-perf/bin/ruby script/rails console"
同じ結果を得るためにできる忍者 ps よりもクリーンなものはありますか?
明確にするために、混乱がある場合に備えて、次とまったく同じ出力が必要です。
`ps -eo "%p|$|%a" | grep '^\\s*#{Process.pid}'`.strip.split("|$|")[1]
ARGV は空白に戻ります。
$0 にはフル パスがありません。