2013-10-21 19 views
0

我有ID列表如下,我想将它们转换为空间分隔的编号(见下文输出)转换ID的列表,以空格分隔的编号

输入: -

485238 
478892 
475507 
467737 
486413 
483571 
490005 

OUTPUT: -

485238 478892 475507 467737 486413 483571 490005 
+0

......似乎是相同的。还是我疯了? –

+0

@ChristianTernus - 请现在检查 – user2125827

+0

可能的重复[sed:我如何更换换行符(\ n)?](http://stackoverflow.com/questions/1251999/sed-how-can-i-replace-a -nline –

回答

4

这可能会为你工作(GNU SED):

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

不过说真的,这是用于粘贴作业:

paste -sd\ file 

NB在反斜杠和文件之前的空格之后有空格

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 
2

使用awk,你可以这样做:

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