awkコマンドで使用される変数のリストがあります。スクリプトに渡されるパラメータなので、値は定義されていませんが、forループで使用しようとしています。
私の質問では、変数の値を別の変数名の一部として使用できますか?それともこれは悪い考えですか?それでは、私が取ることができる他の道はありますか?
はい
awk -v var1=hi -v var2=howdy -v var3=greetings \
'BEGIN{for (i = 1; i <= 3; ++i) print var+i}'
希望の出力
hi
howdy
greetings
ベストアンサー1
awk
私はこれが正しい状況では可能ではないと思います。
ただし、gawk
バージョン4.1.0(2013年5月)以降のGNU awk()には、SYMTAB
キーがすべてのグローバル変数の名前である配列があるため、次のようになります。
gawk -v var1=hi -v var2=howdy -v var3=greetings '
BEGIN { for (i=1; i<=3; i++) print SYMTAB["var"i] }
'
hi
howdy
greetings