#!/usr/bin/ruby $options = { :range => 1..11, # main state values are [1..11] } ARGV.reject!{|arg| if arg =~ /--([^=]+)=?/ then k, v = [$1.to_sym, $'] $options[k] = v.empty? ? true : v true else false end } range = $options[:range].kind_of?(Range) ? $options[:range] : eval($options[:range]) line_index = 0 $stdin.each{|line| line_index += 1 if line_index == 1 then next end puts line.split(/[\s,]/)[range].join(",") }