変数を初期化するプロセスは何ですかawk
?私はBEGIN
awkで、その句が最初に変数を初期化する適切な方法である可能性があることを読みました。
答え1
awk
スクリプトの変数を初期化するには2つの一般的な方法があります。 1つの方法は、次のものを使用することです-v
。V変数)スイッチ。たとえば、-vfoo=bar
変数をfoo
文字列に初期化します'bar'
。
$ awk -vfoo=bar 'END {print foo}' < /dev/null
bar
別の一般的なアプローチは、セクションで変数を初期化することですBEGIN
。
$ awk 'BEGIN { foo="bar" } END { print foo }' < /dev/null
bar
私の考えでは、呼び出しにランタイムコンテキストによって変更される値が必要になる可能性がある場合は前者が有用であり、awk
各実行で初期化値を変更する必要がない場合は後者がより良いです。