你將如何創建一個可讀的變量。它會從某個文件中讀取它是否存在,否則會從標準輸入中讀取。就像這樣:文件和標準輸入之間的紅寶石切換
input = File.open("file.txt") || in
這不起作用,但我認爲這應該做的很多,但我找不到一個好辦法做到這一點。
你將如何創建一個可讀的變量。它會從某個文件中讀取它是否存在,否則會從標準輸入中讀取。就像這樣:文件和標準輸入之間的紅寶石切換
input = File.open("file.txt") || in
這不起作用,但我認爲這應該做的很多,但我找不到一個好辦法做到這一點。
這適用於你嗎?
input = File.exist?("file.txt") ? File.open("file.txt") : STDIN
你也可以使用'$ stdin',而不是'STDIN'。 – bta 2010-01-19 23:35:53
我認爲紅寶石具有治療未STDIN之前使用的參數是第一次使用就好像它是用於管道輸送到標準輸入文件名的能力。
儘管我討厭隱晦的命名方案,但這非常有用。 – ezpz 2010-01-19 15:23:42
同意。那麼,有ARGF。仍然神祕,但不像$ <。 – 2010-01-19 16:21:39