• 締切済み

awkについて

UNIXのawkコマンドにて、レコードを抜き出したいのですが、その時抜き出した各レコード毎に改行 をいれたいのですが、下記のような定義で問題ないでしょうか? awk -f PGMファイル 元データファイル > 抜き出したデータファイル PGMファイル は下記です。 BEGIN{ORS=\"\\n\"}  ←改行でいいんでしょうか? { if(substr($0, 5, 1) == \"1\"){ if(substr($0, 6, 2) == \"2\"){ print substr($0, 1,138) } } }

みんなの回答

  • sakusaker7
  • ベストアンサー率62% (800/1280)
回答No.1

ORSはほっといても改行(\n)ですけど。 >BEGIN{ORS=\"\\n\"}   仮にこういう形で設定したいのなら ORS="\n" でOKです。 if(substr($0, 5, 1) == \"1\"){ if(substr($0, 6, 2) == \"2\"){ これ、素直に == 1 とか == 2で問題ないんじゃあ?

MASANORI9
質問者

補足

ありがとうございます。 下記にてテストしてみます。 BEGIN{ORS="\n"}   { if(substr($0, 5, 1) == "1"){ if(substr($0, 6, 2) == "2"){ print substr($0, 1,138) } } }

関連するQ&A