はじめに

多量の行が表示されないように、このブログは1コンテンツしか表示されない。ブログアーカイブから、他の記事を捜してくれ。

環境作れし。
・gawk 3.1.5 for Windows をググッて入手。
・gawk.exeをpathの通ったフォルダにぶち込めし。
 (「windows パスを通す」ググッて)
 (面倒なら、C:\windowsにぶち込む)
・環境変数「awkpath」にスクリプトを保存するフォルダを設定。
 (「環境変数 設定 windows」ググッて)
 (面倒なら、C:\windowsに、紹介されているスクリプトぶち込む)

2013年10月30日水曜日

最強Grep ファイル検索 awk script

Grepコマンドだが、、、

●キーワードに正規表現を使える
●2つめのキーワードを指定して、2つのキーワードにはさまれた行範囲を出力できる
●1つめのキーワード内の部分文字列を2つめのキーワード内に指定できる
●1つめのキーワードに対して除外条件指定できる

例えば、下のC言語のソースファイル"test.c"に最強Grepをかけてみる。

test.c


grep コマンドラインパラメタと出力結果


AWKのつぼ

ま、簡単に説明すると1個目のキーワードマッチでフラグ立てして2個目のキーワードマッチでフラグを落とす。フラゲの時に出力って訳だ。
スクリプト的には難しい所は無い。
しいて言うならば、リアルタイムに、2個目のキーワードの部分文字列指定キャラを本物のその時々の文字列に置き換えて作りこむ所がミソかね。

ptgrep.bat


ptgrep.awk

ptgrep.bat(.awk)は、複数ファイル検索に対応していない。
これを、allptgrep.batで対応する。

allptgrep キーワード1 <拡張子> <ファイル名、キーワード1以外のptgrepパラメタ>

カレントフォルダを基点に階層内の全ファイル中、指定拡張子のファイルに対してptgrepを呼び出すバッチだ。

allptgrep.bat


allptgrep.awk

0 件のコメント:

コメントを投稿