2015-01-05 46 views
1

如何創建一個「監聽器」,將像一個/dev/something文件反應,所有的輸入重定向到它(如:cat /text.txt > /dev/something)將由Ruby程序讀取?如何實現在Ruby中的/ dev /監聽器?

在我的眼裏,它看起來像

dev = Device.new(/dev/something) 
while dev.gets do 
    ... 
    .... 
    ..... 
end 

回答

1

我認爲要做到這一點最簡單的方法是這樣的:

ARGF.each_with_index do |line, index| 
    puts "#{index}: #{line}" 
end 

並在控制檯鍵入type stdin_read1.rb | stdin_read1.rb其中第一個文件就可以任何文本文件。

這是Windows的語法,但我看你對控制檯部分沒有問題,我想cat是Linux的等價物。

您可以使用each,我用each_with_index來演示文本不僅僅是管道。