我想通过命令行为我的pinger程序提供反馈,并使用ps ax查看它。我发现SO q。但如何通过Ruby设置命令行值以通过PS查看状态?
....
ARGV[0] = "Hello!" # does nothing
我通过ruby ./pinger
我想通过命令行为我的pinger程序提供反馈,并使用ps ax查看它。我发现SO q。但如何通过Ruby设置命令行值以通过PS查看状态?
....
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
,你应该看到一个煎饼过程。
优秀。谢谢! –
+1用于煎饼。 –
@ rm-rf:我厌倦了* foo *,因此我切换到了[*煎饼*](http://www.youtube.com/watch?v=dJUvPZI3Cr4)。此外,我喜欢煎饼:) –
我怀疑你可以做的不w/o修改Ruby本身。 –
@Dave:你可以赋值给'$ 0',这就是C的'argv [0]'的Ruby等价物,Ruby的'ARGV'只保存参数。 –
啊,有趣。 –