出沢です

お礼を書いているうちにぞくぞく。
皆さん有り難うございました。

皆さんのレスポンスを読んで思ったのですが、
問題を簡潔にかつ本質が伝わるように書くって難しいですね。

やりたかったのは 
複数のDHCPサーバのログをかき集めて、(後の処理の関係で)日別のファイルにする
一つの割り当てに複数ログを吐きだしてる場合もあるのでそれは一つにする
日付のフォームが "May  1" の様になってるのを 0501 にする
   つまりこんなデータから
      Apr 30 17:40:57 10.208.51.247 to ... via 10.208.51.252
      Apr 30 17:40:57 10.208.51.247 to ... via 10.208.48.253
      Apr 30 21:10:28 10.208.48.237 to ... via 10.208.51.252
      May  1 06:55:10 10.208.46.130 to ... via 10.208.51.252
      May  1 06:55:10 10.208.46.130 to ... via 10.208.48.253
      May  1 07:43:51 10.208.44.48 to ... via 10.208.51.252
   0430.log に 2行、0501.log に2行書き出す
      なぜ2行かと言うと、同じ割り当てがダブって log されてるから

ということでした。
  しかも 
     Windows環境で
     安定したら他の人に任せるのであまり色々な環境を入れないで

で、
   open(file, 'a+') は、例外処理が無くて好みなのですが、
   今回の目的では、logの行数がとても多いので、open,close処理の負荷増が
   いやだった。

   alist.uniq.each {|file| は、
   問題単純化がまずくて本質を伝えられなかったのですが
   上のようなデータと目的ですので、uniq しては意味なかったのです。