我想通過命令行爲我的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'只保存參數。 –
啊,有趣。 –