助田です。
In [ruby-list:6491] Re: call for scripts 

>>|> 2. クラスを定義していないスクリプト
>>|
>>
>>と流れる予定なのですが,クラスを使わない実用プログラミングは,
>>実はもっぱらCプログラマのまつもとや,すぐオブジェクト指向し
>>てしまう石塚さんにはなかなか用意できないのでした.あと,二人
>>揃ってGUIは苦手と来てますし.

>その通りです(^^;;;
クラスを使ってないのを一つ。
csv ファイルの指定されたフィールドに指定されたパターンを含む行
だけを出力するスクリプト(csvgrepと勝手に呼んでます)です。
フィールドの指定を省略したときは、通常の grep と同じ。
#絶対どっかにあるな。^^;;;

助田雅紀(masaki.suketa / tonen.co.jp)

#!/usr/local/bin/ruby
require 'parsearg'
def usage
  puts "usage : csvgrep [-s sep] [-p position] <expr> files..."
end

$USAGE = 'usage'

def pickup(str)
  return str if $OPT_p == "0"
  str.split($OPT_s)[$OPT_p.to_i-1]
end

parseArgs(2, nil, nil, "s:,", "p:0")

expr = /#{ARGV.shift}/

while gets
  print if expr =~ pickup($_)
end