• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Bシェルのawkコマンドについて)

Bシェルのawkコマンドの使い方と注意点

このQ&Aのポイント
  • Bシェルのawkコマンドを使ってファイルサイズを取得する方法について説明します。
  • Bシェルのawkコマンドを使用して配列の要素を取得する方法について、変数を使用して要素を指定することはできません。
  • 他の方法として、Bシェルのコマンドサブスティテューションを使用して、変数を含む文字列を組み立てることで要素を取得することができます。

質問者が選んだベストアンサー

  • ベストアンサー
  • notnot
  • ベストアンサー率47% (4900/10358)
回答No.1

' ' で囲まれた中では、$によるシェル変数置換は効きません。" " で囲むとシェル変数置換が行われます。ただ、 echo $array | awk "{print $num}" と書くと、$num が 3 のため、 echo $array | awk "{print 3}" となり、3が表示されるだけです。 echo $array | awk "{print \$$num}" echo $array | awk '{print $'$num'}' のどちらか好みのほうを使ってください。私の好みは後者です。 他には、cut コマンドも使えるかと思います。詳しくは、man cut を。

utf7
質問者

お礼

ご回答ありがとうございます。 echo $array | awk "{print \$$num}" でやったところ、プロセスIDが出力されてしまい、 echo $array | awk '{print $'$num'}' でやったところ、要素が全て表示されてしまいました。 ですがcutを使用し、 echo ${array} | cut -f${num} -d' ' のようにしたところ、うまくいきました。 ありがとうございます。