- ベストアンサー
awk内で使用した変数をシェルに反映
awk内で使用した変数をシェル変数に代入する事は可能でしょうか? system関数を使ってexportなどをしてみましたが、だめでした。 イメージ的には以下のような感じです。 #!/usr/ksh HOGE=1 echo $HOGE | awk '{ HOGE=2 }' echo $HOGE ←※ここでHOGEの内容が2になるようにしたい。 お手数ですが、お分かりになる方お助けお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
awk側でHOGE=2とか表示して、呼び出したksh側でstdinで渡された代入文などを実行すれば良いのでは。 constset="`echo $HOGE | awk xxxxx`" eval $constset echo $contset HOGE=3;HOGEB=6;HOGEZ=999
その他の回答 (1)
- Tacosan
- ベストアンサー率23% (3656/15482)
回答No.1
方法はなくもないと思うけど.... とりあえず, 例えば 「system関数を使ってexportなどをしてみましたが、だめでした。」 の理由はわかりますか?
補足
おそらくsystem関数のプロセス以降生成される 子プロセスが反映される対象でカレントには反映 されとないからかと考えてます