ARGV [] > `ps -eo "%p|$|%a" | grep '^\\s*#{-6ren">
gpt4 book ai didi

ruby - 如何在 ruby​​ 中获得完整的命令行?

转载 作者:数据小太阳 更新时间:2023-10-29 06:46:56 25 4
gpt4 key购买 nike

如何在 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"

有什么比 ninja ps 更干净的方法可以得到相同的结果吗?

澄清一下,以防混淆,我想要完全相同的输出:

`ps -eo "%p|$|%a" | grep '^\\s*#{Process.pid}'`.strip.split("|$|")[1]

ARGV 返回空白。
$0 缺少完整路径。

最佳答案

我会使用:

#!/usr/bin/env ruby

puts "Process ID: #{ $$ }"
puts `ps axw`.split("\n").select{ |ps| ps[ /\A#{ $$ }/ ] }

在脚本输出中运行:

18222 s000  S+     0:00.25 /Users/foo/.rbenv/versions/1.9.3-p385/bin/ruby /Users/foo/.rbenv/versions/1.9.3-p385/bin/rdebug /Users/foo/Desktop/test.rb

关于ruby - 如何在 ruby​​ 中获得完整的命令行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14928630/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com