概要 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
![awk とシェルとの値の受け渡しについて - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/60cbc7113770e5932319c0c0bcbdac64047e55db/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-412672c5f0600ab9a64263b751f1bc81.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTk3MiZoPTM3OCZ0eHQ9YXdrJTIwJUUzJTgxJUE4JUUzJTgyJUI3JUUzJTgyJUE3JUUzJTgzJUFCJUUzJTgxJUE4JUUzJTgxJUFFJUU1JTgwJUE0JUUzJTgxJUFFJUU1JThGJTk3JUUzJTgxJTkxJUU2JUI4JUExJUUzJTgxJTk3JUUzJTgxJUFCJUUzJTgxJUE0JUUzJTgxJTg0JUUzJTgxJUE2JnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTYmcz01MGRkOWMzODZlNjYyZWFhN2RkYzg3NDY4M2Y0YzAyMQ%26mark-x%3D142%26mark-y%3D57%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZoPTc2Jnc9NzcwJnR4dD0lNDBzaG90ZXRzJnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9MzYmdHh0LWFsaWduPWxlZnQlMkN0b3Amcz00MTk5MWM1ODNiNDA5NWQ4Y2ExNWMwN2NlNzFiYjZjOA%26blend-x%3D142%26blend-y%3D486%26blend-mode%3Dnormal%26s%3Dd15d0336fe8cc01995aeebe8ad6fd945)