概要 awk への値の受け渡しの記事はよく見かけるが awk からシェルへの値の受け渡しの記事が少ないのでまとめてみた。 シェルから awk への値の受け渡し awk への値の受け渡しは -v オプションを使うと覚えておけば間違いない。 #!/bin/sh # -v オプションで値を手入力 echo | awk -v foo=before '{print foo}' # 実行結果: before # 後ろには書けない echo | awk '{print foo}' -v foo=after # 実行結果: awk: fatal: cannot open file `-v' for reading (No such file or directory) # -v 無しで渡す方法もあるが、BEGINブロックで値を参照できない echo | awk 'BEGIN{print foo} {pri