LoginSignup
4
6

More than 5 years have passed since last update.

windows上でgawkを勉強したい人は下記の情報はお役に立てればと思います。

Last updated at Posted at 2014-08-20

環境整備

1.Windows上で動くgawkのダウンロード
http://ftp.vector.co.jp/pack/win95/util/text/awk/gawk-mbcs-win32-20051223.zip?_ga=1.71611859.1794640146.1403167474
2.「おーくの友だち」ツールのダウンロード
http://hpcgi2.nifty.com/mozu/kz_download.cgi?Forawk111.zip

※このツールを持つと下記のことができます。
・gawk用のソースの作成、実行が楽になります。
・インプットファイルが複数の場合、簡単に指定できます。
・出力場所:クリップボード、スクリーン、ファイルなど指定できます。
・同じソースを複数のファイルに対して実行する時に楽です。

勉強用サイト

「おーくの友だち」というツールを使いながら勉強が楽しいです。
http://homepage2.nifty.com/mozu/koza/park_of_text.html

勉強を終わったら、下記のサイトでまとめて復習したらよいかもしれません。
http://www.osaka-kyoiku.ac.jp/~kokugo/nonami/awk/awkmini.html

サンプル

1.受信ファイルの中にタイトル行しかないファイルである場合、そのファイルを削除するコマンドを自動作成するサンプル

#------------------------------------------
#タイトルしかないファイルの削除用コマンド作成
#------------------------------------------

#------------------------------------------
#ファイルを読み込む前に1回だけ実行されるブロク
#------------------------------------------
BEGIN{
    count = 0;
    FS = "\t";#項目の区切り文字の指定する
}


#------------------------------------------
#1個目のフィールドの値でタイトルであるかどうかを判断し、
#タイトル行ではない行の個数を計算する
#------------------------------------------
$1  !~/^帳票種/ {count += 1;}

#------------------------------------------
#タイトル行しかないファイルの場合、削除コマンド作成
#------------------------------------------
END{
    #最後の行である場合、データレコードの合計件数により、削除命令の出力制御を行う
    if(count == 0){
         print "del" " " FILENAME >> "C:\\Users\\Fowawk111\\result.bat" ;
    }
}


#------------------------------------------
#この部分は$1  !~/^帳票種/ {count += 1;}と同じ役割
#------------------------------------------
#{    
    #タイトル行ではない行の計算を行う
#    if ($1 !~/^帳票種/) {
#       count += 1;
#   }
#}
#------------------------------------------
4
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
6