2016-11-23 9 views
1

私はこのようなデータを持つUnixファイルを持っています。カラムをunixに転記する

1379545632, 
1051908588,  
229102020,  
1202084378,  
1102083491,  
1882950083,  
152212030,  
1764071734,  
1371766009, 

(あなたが上記を参照としてFYI、二つの数字の間には空行がありません。その理由だけで、ここエディタの。他の下のすべての数字の1とそのわずか列)

は私が移調したいですそれを一行として印刷します。

1379545632,1051908588,229102020,1202084378,1102083491,1882950083,152212030,1764071734,1371766009 

また、最後のカンマを削除します。このよう

誰かが助けることができますか?シェル/ awkソリューションが必要です。

+1

質問のサンプル入力/出力を正しくフォーマットするには、エディタの '{}'ボタンを使うだけです。 –

+0

[AWKまたはPerlを使用した転置]の重複の可能性があります。(0120-13752-1) – tripleee

答えて

1

$ printf 'x,\ny,\nz,\n' | awk -v RS='^$' '{gsub(/\n|(,\n$)/,"")} 1' 
x,y,z 
0

最後のコンマを削除するには、sed 's/,$//'を試してみてください。マルチchar型のRS用のGNU AWKで

+0

すべての改行を削除すると、出力はもはやPOSIXテキストファイルではなくなります。だから、YMMVはあなたがsedを含むどのUNIXツールにパイプしているのかを知っています。 –

0
awk 'BEGIN { ORS="" } { print }' file 

ORS:出力レコードセパレータ。 各レコードはこの区切り文字で区切られます。

関連する問題