山本@東大駒場です. > 現在、Vine2.6r1をインストールし、apt-getで最新にしています。 > しかしながら、Vine2.5では問題のなかった grepを利用したshell > scriptの動作が遅くなってしまいました。 (snip) > これはgrep 2.5のバグなのでしょうか?いろいろ検索してみましたが、 > 見つけることができなかったので、このMLに投稿させて頂きました。 > 情報をお持ちの方はお教え頂ければ幸いです。 ^M で始まるのは分かりませんが,普通のパターンマッチでは,grep 2.5のマ ルチバイト対応が影響して遅くなっているようです. とりあえず,回避するためには環境変数 LANG を C にしておくようです. 私は,エイリアスで env LANG=C を前においてから [ef]?grep するようにし ています.wc も同じく速くなったように思います.(cshの場合) alias grep 'env LANG=C grep' alias fgrep 'env LANG=C fgrep' 以下同様. uuencodeしたものなら,マルチバイト対応をオフにした方がよいので,とりあ えず試してみてはどうでしょうか? 以下,数週間前に実験したものです. % wc /var/log/httpd/access_log 133102 2344085 29184468 /var/log/httpd/access_log % grep -c 'Opera' /var/log/httpd/access_log 3470 63668 752625 % time grep 'Opera' /var/log/httpd/access_log ..... 24.470u 0.390s 0:37.36 66.5% 0+0k 0+0io 167pf+0w % time env LANG=C grep 'Opera' /var/log/httpd/access_log ..... 0.130u 0.200s 0:02.98 11.0% 0+0k 0+0io 259pf+0w 13万行のApacheのログに対して3500行ほどマッチする場合に,LANG が ja_JP.eucJP であると25秒かかり,C であると0.13秒で終っています. 山本 篤 <東京大学総合文化研究科広域科学専攻> mailto:yamamoto@xxxxxxxxxxxxxxxxxxxxx http://www.graco.c.u-tokyo.ac.jp/~yamamoto/