web-dev-qa-db-ja.com

awk + ​​awk出力を1行で出力

awsysを指定して次のhasysコマンドを実行すると、マシン名が次のように出力されます。

hasys -display|grep Shutdown | awk '{print $1}'
  machine1a
  machine1b

次のように、マシン名を1行で印刷する方法をアドバイスしてください:例

hasys -display|grep Shutdown | awk '{print $1}'

    machine1a machine1b

名前を1行で出力できるように、awk構文に何を追加する必要がありますか?

4
user58412

あなたは言うことができます:

hasys -display | grep Shutdown | awk '{print $1}' ORS=' '
9
devnull

grepawkは冗長です:

 hasys -display | awk '/Shutdown/ { printf "%s ", $1 }'
9
jasonwryan
hasys -display | awk '/Shutdown/ {print $1}' | paste -sd ' ' -

@ devnull's および @ jasonwryan's とは対照的に、これは末尾にスペースを追加せず、行を終了します。 paste -sd<sep> -は、<sep>で区切られたリストに行を結合するための一般的なイディオムです。

5
 echo $( hasys .. the whole thing )

ちょうど楽しみのために

2
Emmanuel