将id列表转换为以空格分隔的ID

时间:2013-10-21 01:08:19

标签: sed awk

我有一个id列表,如下所示,我想将它们转换为空格分隔的id(参见下面的输出)

INPUT: -

485238
478892
475507
467737
486413
483571
490005

输出: -

485238 478892 475507 467737 486413 483571 490005

3 个答案:

答案 0 :(得分:4)

这可能适合你(GNU sed):

sed ':a;$!N;s/\n/ /;ta' file

但实际上这是粘贴的工作:

paste -sd\  file 

N.B。反斜杠后面有一个空格,文件前面有一个空格

答案 1 :(得分:2)

使用awk,您可以执行此操作:

awk '{printf "%s ",$0}' file
485238 478892 475507 467737 486413 483571 490005

答案 2 :(得分:1)

$ more test.txt
485238
478892
475507
467737
486413
483571
490005
$ sed ':a;N;$!ba;s/\n/ /g' test.txt
485238 478892 475507 467737 486413 483571 490005

如果要将其发送到新文件:

$ sed ':a;N;$!ba;s/\n/ /g' test.txt > test2.txt
$ more test2.txt 
485238 478892 475507 467737 486413 483571 490005