我要處理的紅寶石在命令行輸入:Ruby中STDIN的最佳做法?
> cat input.txt | myprog.rb
> myprog.rb < input.txt
> myprog.rb arg1 arg2 arg3 ...
什麼是做到這一點的最好方法是什麼?特別是我想處理空白STDIN,我希望有一個優雅的解決方案。
#!/usr/bin/env ruby
STDIN.read.split("\n").each do |a|
puts a
end
ARGV.each do |b|
puts b
end
只是一個小提示:你給第一個兩行命令正是從myprog.rb`的`的觀點一樣:`input.txt中`文件附加到_stdin_; shell爲你管理這個。 – Mei 2011-07-12 15:52:49
^^這通常被稱爲「無用的貓」,你會看到很多。 – 2012-03-09 00:22:20
@SteveKehlet但我認爲它更巧妙地稱爲「虐貓」 – OneChillDude 2014-08-13 19:26:35