ruby - 如何通过 Ruby 设置命令行值以通过 PS 查看状态?

标签 ruby command-line command-line-arguments argv

我想通过命令行为我的 pinger 程序提供反馈,并使用 ps ax 查看它。

我找到了一个 SO q .但是

....
ARGV[0] = "Hello!" # does nothing

我正在通过 ruby ./pinger 启动脚本

最佳答案

改为分配给 $0。例如,如果我启动 irb

$ ps | egrep 'irb|pancakes'
 3119 ttys000    0:01.02 irb 
 3131 ttys001    0:00.00 egrep irb|pancakes

然后在 irb 中结束:

>> $0 = 'pancakes'

然后回到另一个终端:

$ ps | egrep 'irb|pancakes'
 3119 ttys000    0:01.07 pancakes 
 3135 ttys001    0:00.00 egrep irb|pancakes

您也可以使用这个小脚本进行检查:

#!/usr/bin/env ruby
$0 = 'pancakes'
sleep 10

运行它,跳转到另一个终端,执行 ps | grep pancakes,你应该会看到一个 pancakes 进程。

关于ruby - 如何通过 Ruby 设置命令行值以通过 PS 查看状态?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7477739/

相关文章:

ruby-on-rails - Rails 和 SQL 上的相同查询返回不同的结果

windows - 如果抛出错误,如何跳过循环中的迭代?

windows - 通过命令行通过 XMPP 服务器发送自动警报? ( Windows )

powershell - Powershell 中奇怪的命令行行为

ruby - 使用 Nokogiri 提取 RSS 链接

ruby - 如何使用 Mechanize 填充 dom 节点输入的值?

ruby-on-rails - rspec 的集成测试和正常测试有什么区别?

java - 通过命令行执行程序

linux - xargs - 程序是循环运行还是重新执行

c - 如何在 qt creator 中为 gcc 添加选项?