特定の順序でawk出力を取得する必要があります

特定の順序でawk出力を取得する必要があります

ファイルのデータ:

1234567-5678907
3456789-1234563
3456789-1234567
N

それでは、次の形式で出力したいと思います。

1234567-5678907,3456789-1234563,3456789-1234563....n

次のコマンドを使用しましたが、先頭に追加のコンマがあります。

awk -F"-" ' {printf ",%s-%s",$1,$1} END{print""}'

シェルスクリプトで使用できるコマンドを共有してください。

答え1

awkの出力レコード区切り文字を使用してください。経口再水和塩:

awk 'BEGIN{ORS=",";}1' infile

答え2

paste上記のコメントに基づいた解決策はすでにあります。しかし、そうすれば解決策awkは次のとおりですawk

awk 'BEGIN{RS="";OFS=","};$1=$1'

最後に偽のカンマを生成せずに改行文字で出力を正しく終了します。

関連情報