2011-10-20 49 views
0

所以我不知道如何处理此文档在Ruby中,例如,这是我在程序的主循环:红宝石,UNIX和这里的文件

begin 
    word = gets 
    if word.nil? 
     next 
    end 
    command = word.chomp.to_s 
    print word 
end until (word.eql? "EOI") 

和我做./file <<EOI

运行

但是,如果用户更改了用作终止字符串的内容,则最后一行显然会失败。是否有一些全局变量可以让我检测用户指定的终止字符串?如果没有,处理<<EOI的最佳方法是什么?

谢谢你。

样品输入:

hello 

world 
EOI 

回答

2

任何理由,你为什么不只是循环,直到word.nil?这也将是如果用户发送EOFCtrl-d)的情况下?

until (word = gets).nil? 
    print word.chomp 
end