タグ

regexpとshellに関するkenjiro_nのブックマーク (8)

  • 【16進数】bash様の助けを借りて任意のバイト列を grep する - Qiita

    目的 凄腕 GNU/Linux エンジニアの皆様、ふと日常の中で 任意のバイト列を探したいことはありませんか? 例えば・・・ ・ファイル内のNULL文字('\0')の個数を検索したい ・言語設定は LANG=C だけど日語の「あ」を検索したい ・文字化けしちゃう外国語の文字を検索したい この記事は、bash 様の力を借りて、このようなケースの手助けをするための記事です。 弊社内でも案外知らない方が多かったので、メモしておきます。 基テクニック bashの力を借りる bash は、以下のようなフォーマットで 16進数表記した任意のバイト列を扱うことができます。 http://linuxjm.sourceforge.jp/html/GNU_bash/man1/bash.1.html より

    【16進数】bash様の助けを借りて任意のバイト列を grep する - Qiita
    kenjiro_n
    kenjiro_n 2016/03/31
    $`xXX'を並べて書けるというノウハウ。
  • grepで該当する行の前後も一緒に表示するには

    grepは、デフォルトでは該当する行だけが表示される。これを、該当する行の前後の行も一緒に表示させるには「-」の後ろに表示したい行数を指定してgrepを実行する。例えば、該当行の前後3行を併せて表示する場合は、「-3」というオプションを指定する。 $ grep -n kitaura smb.conf 4:      workgroup = kitaura ←-nオプションを付けたので、4行目に該当する文字列があることが分かる $ grep -3 -n kitaura smb.conf 1-[global] 2-      coding system = euc 3-      client code page = 932 4:      workgroup = kitaura ←-3オプションによって、前後各3行も表示される 5-      server string = Samba %v

    kenjiro_n
    kenjiro_n 2014/10/08
    -C n、あるいは-nというオプション(nはいずれも任意の数)を使う。それにしてもgrepのオプションはいろいろありすぎる。
  • Go言語でag(The Silver Searcher)ライクな高速検索ツールをつくった。EUC-JP/Shift-JISも検索できマス。

    いまや高速パターン検索といえばag(The Silver Searcher)ですが、検索対象がUTF-8のテキストを前提としているため、EUC-JPやShift-JISといったファイルを検索するのに課題があります。 これまで、それらの日語文字セットを検索できるようにするため、色々とagの改造、公開を行っていました。 ag(The Silver Searcher)でEUC-JP/Shift-JISのファイルも検索できるようにしてみた 日語圏特化型ag -白金- の配備が完了しました しかし、特定の国の文字コードだけに特化した修正というのをmasterに取り込んでもらうわけにもいかず、派生ブランチとして追随するのも、やはり面倒… そこで年始にGo言語を触ったのをきっかけに、Go言語でパターン検索ツールをつくってみました。 せっかくなのでポストagを目指して、プラチナサーチャー(The Pl

    Go言語でag(The Silver Searcher)ライクな高速検索ツールをつくった。EUC-JP/Shift-JISも検索できマス。
  • はてなブログ | 無料ブログを作成しよう

    超絶品!死ぬまでに一度はべてほしい煮込み10選 ああ。いかにもインターネット!みたいなタイトルをつけてしまった。 「超絶品!死ぬまでに一度はべてほしい煮込み10選」て。読んでほしすぎて大仰な形容詞をつけて数字を入れて読み手の注意を引くタイトル、もうネット記事まるだしである。 でも、わかってほしい。…

    はてなブログ | 無料ブログを作成しよう
    kenjiro_n
    kenjiro_n 2013/12/04
    というか素直にgrep -o で自分が悩んでた用事は済んだという話。
  • 意外と知られていないファイル探索方法(grep --include) - 技術メモ帳

    書こう書こう書こうと思っていたら先に書かれてしまった。 404 Not Found この行き場の無い感情をどうにかボクの中から排除しなければならない。 そう考えたときに独り言のようにこのブログロに記述すれば良いじゃないかという 結論にたどり着いたのはもはや必然とも言える。 find | xargs による探索だが、それが簡単なものであれば 実は grep コマンドだけでうまくいく。 GNU grep、BSD 系の grep コマンドでは include、exclude オプションで再帰検索時に検索対象とするファイルを絞り込む事が出来るのだ。 --include=pattern --exclude=pattern たとえば、カレントディレクトリ以下の *.rb から test という文字列を 含むファイルを探索したい場合は次のようにすれば良い。 fgrep -r --include='*.r

  • ackを捨てて、より高速なag(The Silver Searcher)に切り替えた - Glide Note

    Geoff’s site: The Silver Searcher: Better than Ack ggreer/the_silver_searcher · GitHub パターン検索にはackを利用していて、通常利用時には特に不満は無かったんですが、 ファイル数が多いディレクトリだと遅かったので、もっと他の方法が無いかと調べていたら ackの3〜5倍速いというThe Silver Searcherというものが あったので導入。 The Silver Searcherの特徴 公式に書いてあるThe Silver Searcherの特徴 ackの3〜5倍高速 .gitignore、.hgignoreに記載されているものを検索対象から除外 検索対象から除外したいファイルは.agignoreに記載 agというコマンド名で、ackと比べてコマンドが短い(33%減!) なぜ高速なのかは https

  • grepをよく使うプログラマはどう考えても乗り換えるべき新しいgrepコマンド「ack」:phpspot開発日誌

    Beyond grep: ack 2.04, a source code search tool for programmers grepをよく使うプログラマはどう考えても乗り換えるべき新しいgrepコマンド「ack」。 サーバに入ってコードを書いている人はかならず使うgrepですが、grepよりも高速に検索でき、git,svn等のソースコード以外のソースはgrepしないで検索できるツールらしいです。 Perlで書かれていて、Perlの強力な正規表現が使え、ハイライトしてくれます。ソースツリーの下で「ack 検索ワード」で検索するだけというシンプルさもいいです WEBサービスを書いているとhtmlphp等色々なソースをいじりますが、ファイルの検索対象も選べるため、便利です。 ack --php <検索ワード> でphpのソースのみを対象とし、ack --nophp <検索ワード>でphp

    kenjiro_n
    kenjiro_n 2013/07/16
    Ubuntuでは普通にapt-get install ack-grep で入れられるとのこと。
  • 特定の拡張子(*.php)のファイルだけをGrepして検索したい。 - それマグで!

    コマンドでファイル種類を指定して検索。 phpファイルや、datファイル、rubyファイルなど拡張子を指定して検索したい。 grep DSN . -r --include=*.phpgrep のmanにありました。manpage最高 拡張子を指定して、ファイル内検索したい。 EmEditorを始め、WindowsGUIなら一瞬ですよ。 (63b554e94c5bbde540788defe0823b6d) WindowsGUIなら簡単だけど、Macだと、どうしてこんなに面倒くさいんだ、と思ってました。 いままでこんな風に面倒な事をしていた。 grep -r DSN ./*/*.php これだと1階層だけしか取れない。 grep -r DSN ./*.phpこれだと2階層目だけしか取れない。 grep -r DSN ./*/*.phpこれあと3階層目だけしか取れない。 grep -r DS

    特定の拡張子(*.php)のファイルだけをGrepして検索したい。 - それマグで!
  • 1