2011-10-20 75 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