我有一个Unix文件,其中包含这样的数据。
1379545632,
1051908588,
229102020,
1202084378,
1102083491,
1882950083,
152212030,
1764071734,
1371766009,
(仅供参考,如上所示,两个数字之间没有空行。这只是因为这里的编辑器。它只是一个列,其中所有数字都在另一个之下)
我想转置它并打印成一行。
像这样:
1379545632,1051908588,229102020,1202084378,1102083491,1882950083,152212030,1764071734,1371766009
同时删除最后一个逗号。
有人可以帮忙吗?我需要一个shell / awk解决方案。
答案 0 :(得分:1)
使用GNU awk进行多字符RS:
$ printf 'x,\ny,\nz,\n' | awk -v RS='^$' '{gsub(/\n|(,\n$)/,"")} 1'
x,y,z
答案 1 :(得分:0)
tr '\n' ' ' < file.txt
要删除最后一个逗号,您可以尝试sed 's/,$//'
。
答案 2 :(得分:0)
awk 'BEGIN { ORS="" } { print }' file
ORS:输出记录分隔符。 每个记录将使用此分隔符分隔。