タグ

grepに関するyutamotyのブックマーク (10)

  • GNU grep 2.18リリース: 10倍速くなったと思ったら今度は200倍遅くなっていた | はむかず!

    先日の記事 いまさらgrepが10倍高速化したのはなぜか が思わぬ閲覧数を稼いでしまい、トルコ語の知識を日に広めるのに大きな貢献をしたような気がしますが、みなさんいかがお過ごしでしょうか。 実は先日の記事を書いた時にはすでに2.18がリリースされてたのだが、今回は2.17のときと違って日の大手メディアが取り上げてなかったので、ついつい見落としていた。しかし実は2.18でも大きな変更が!! リリースノート抜粋: grep -i in a multibyte, non-UTF8 locale could be up to 200 times slower than in 2.16. [bug introduced in grep-2.17] なんということでしょう。-iオプションでUTF8のときは2.17で10倍速くなっていたのだが、それ以外のマルチバイトロケールのときは200倍遅くなって

  • いまさらgrepが10倍高速化したのはなぜか – はむかず!

    最近GNU grepコマンドの最新バージョンがリリースされ、速度が10倍になったとのアナウンスがあった。それを聞いて、なんであんな枯れた技術に10倍もの高速化の余地があったのだろうと不思議に思った人も多いだろう。 ニュース記事:grepコマンド最新版、”-i”で10倍の高速化 家のリリースノート:grep – News: grep-2.17 released [stable] 今回のリリースでは正確には、マルチバイトロケールで、-iオプション(–ignore-case、つまり大文字小文字を区別しないオプション)をオンにした時の速度が10倍くらいになったそうだ。 なぜそんなに速くなったのか?逆を言えば今までなぜそんなに遅かったのか? そもそも、多くの日人にとって「大文字小文字の区別」というと英語のアルファベットか、せいぜいフランス語とかドイツ語とかのアクサン記号・ウムラウトがついたものく

  • Big Sky :: grep で文字列を縦書きに変換

    grep の -o オプションを使うとマッチした部分だけ列挙してくれる。 例えば <div>foo</div><div>bar</div> <div>baz</div> というテキストファイル foo.txt に対して grep -o "<div[^>]*>[^<]*<\/div>" foo.txt と実行すると <div>foo</div> <div>bar</div> <div>baz</div> が得られる。これを応用して echo 餃子の王将 | grep -o . とやると 餃 子 の 王 将 が得られる。 便利!!

    Big Sky :: grep で文字列を縦書きに変換
  • Tailしながらsed,awk等をノーバッファで快適に使う。 - 自分の仕事を憎むには人生は余りにも短い

    tail -f した結果をsed,awkしてるとバッファリングされてしまい、ぬるぬる感がなくなっていやですよね。 これは各プロセスがバッファするためなので、バッファしないように指定してあげましょう。 各コマンドのノーバッファの設定は以下の通り。 awk {fflush()} grep --line-buffered sed --unbuffered なのでこんなかんじで快適。 tail -f app.log | grep --line-buffered Grapon | sed --unbuffered -e "s/hoge/hage/" | awk -f '{print $2}{fflush()}'

    Tailしながらsed,awk等をノーバッファで快適に使う。 - 自分の仕事を憎むには人生は余りにも短い
  • MiGrep - k本的に無料ソフト・フリーソフト

    コンパクトなインターフェースの Grep ツール。 指定したフォルダ内から、特定の文字列を含むファイルを一括検索することができます。 圧縮ファイル / オフィスドキュメント(DOCX / XLSX / PPTX など)/ PDF 内の文字列を検索する機能や、大文字 / 小文字 & 半角 / 全角 を区別せずに検索する “ あいまい検索 ”、正規表現検索、検索結果一覧をテキストファイルに書き出す機能... 等々が付いています。 「MiGrep2」は、コンパクトなインターフェースの Grep ツールです。 指定したフォルダ内から特定の文字列を含むファイルを見つけ出し、それらをリスト形式で一覧表示できるようにしてくれます※1。 ※1 リストには、見つかったファイルのパス / キーワードを含む行(の番号)/ 行の内容 がカラム分けして表示される。 見つかったファイルはそのままエディタで編集すること

    MiGrep - k本的に無料ソフト・フリーソフト
  • grepで指定オプションを自動付加してくれる環境変数 "GREP_OPTIONS" - 元RX-7乗りの適当な日々

    "GREP_OPTIONS"という環境変数に、常に付けておきたいオプションをあらかじめ指定しておくと、grepコマンドやxgrep(egrepとかfgrepとか...)を実行したときに、自動でオプションをつけて実行してくれます。 例えば、、、 $ export GREP_OPTIONS="--color=auto"とか。常に含めておくなら、あとは"-I"オプションとかですかね。これくらいなら"alias"でも良いわけですがw grepとか毎日使ってもおかしくないコマンドなので、こういう小さい効率化はどんどんやっていきたいところですね! オプション無しで実行した場合 GREP_OPTIONSを設定してから実行した場合 おまけ: --colorの色を変えたい場合 環境変数 "GREP_COLOR"に色コードを指定してやると良いです。 例えば、ハイライトを黄色にしたい場合とかは、以下のような感じ

    grepで指定オプションを自動付加してくれる環境変数 "GREP_OPTIONS" - 元RX-7乗りの適当な日々
  • テキストデータに親しみたいエンジニアがよく使いそうなコマンド:「zgrep」コマンドへの道 - カイワレの大冒険 Third

    ふとたまたま、 「圧縮されたアーカイブログにもgrepがかけられる「zgrep」が便利!」という記事を読んで、こんなコマンドあるんだと思い、どうせならテキストデータ生成から色々コマンド使ってみようじゃないかと思い立ったのが、今回の発端。少しでも黒い画面が好きになる人が増えたら幸いです。 ということで、ちょっと試してみた。 まず検証用データを作ってみる。 まぁ、業務に携わってればログとか色々あるだろうけど、せっかくだしコマンドを色々使って、データ作ってみましょう。 まずある程度固まってるデータとして、郵政のページから郵便番号のCSVを取ってくる。wgetとかはテキストデータと関係ないので除外(優しくなくてごめんなさい。書いてて疲れたw)。あと、このCSVDBサーバに流したりもできるので、便利ですよと。とりあえず解凍。 lzhを解凍するには、lhaというコマンドを使います。こういうとこから持

    テキストデータに親しみたいエンジニアがよく使いそうなコマンド:「zgrep」コマンドへの道 - カイワレの大冒険 Third
  • 圧縮されたアーカイブログにもgrepがかけられる「zgrep」が便利!

    今まで知らずにいたので反省エントリー。 サーバーのアクセスログやエラーログをgrepコマンドで調査する方法は知っていたのですが、ずいぶん前の過去ログなどはgzipコマンドでアーカイブされて運用されている場合も多いですよね。 その場合は当然ですが、アーカイブログに対して調査を行わなくてはいけません。 grepコマンドのように使えるzgrep その圧縮ログファイルに対しても解凍することなくgrep調査が出来るコマンドが「zgrep」コマンドです。 zgrepコマンドで扱えるファイル形式はcompress(*.Z)形式とgzip(*.gz)形式のみ。 zipフォーマット用には「zipgrep」という別のコマンドがあります。 使いかたはgrepと同じ。 zgrep "Message_accepted_for_delivery" maillog.processed.1.gz 簡単に使えるのでいちいち

  • gren - 次世代grepを目指したコマンドラインツール - おんがえしの blog

    grenはgrepの置き換えを目指して作ったコマンドラインツールです。 以下のような特徴を持っています。 特徴 基はfind+grep 指定ディレクトリ以下にある全てのファイルの中身を調べます。 gren 検索文字列 [検索するディレクトリ] でOKです。 ユーザーが指定する項目を最小限に バイナリかテキストかをツールが自動で判断します *.rbや*/*.cppのような指定は必要ありません README,README.jaのような特殊な拡張子でも検索対象に含めます .pngや.exeの中身は調べません。 デフォルトで除外ディレクトリが設定されています * *~, .svn, .git, CVS等は探索対象から除外します 便利な検索結果 検索を開始したディレクトリ(Path)、かかった時間(Time)、ファイル数(Files)、ファイルサイズ(Size)、マッチしたファイル数とヒット数(M

    gren - 次世代grepを目指したコマンドラインツール - おんがえしの blog
  • grep(1)コマンドの使い方 | エンタープライズ | マイコミジャーナル

    The main aim is to document the hurdles that most of us face as UNIX/Linux/BSD sys admin in our day today life. LinuxやFreeBSDでよく利用されるコマンドのひとつにgrep(1)がある。ファイルから特定のキーワードを含んだ行を取り出したりコマンド出力から特定のキーワードを含んだ行を取り出すために利用されるコマンドで、正規表現と組み合わせて利用されることが多い。多機能で単一行表示のみならず、前後の行を含んだ出力も可能など、使いこなせるとさまざまな操作が可能。 LinuxディストリビューションにはGNU grepが含められていることが多い。*BSD系では最近BSDライセンスで実装されたgrep(1)への置き換えが進められているが、それら実装系でもGNU grepと互換性が確保

  • 1