paste

paste 功能说明:paste命令能将文件按照行与行进行合并,中间使用tab分隔。
 
参数选项:
-d  指定合并的分隔符,默认是TAB。
-s  每个文件占用一行。


默认合并文件。
[root@testdb ~]# cat test1.log 
1
2
3
4
5
6
[root@testdb ~]# cat test2.log
aaaaa
bbbbbbb
ccccccccc

eeeeeeeeeee
ggggggggggggg
[root@testdb ~]# paste test1.log  test2.log 
1    aaaaa
2    bbbbbbb
3    ccccccccc
4    
5    eeeeeeeeeee
6    ggggggggggggg
 

通过-d可以指定分隔符
[root@testdb ~]# paste -d: test1.log  test2.log  
1:aaaaa
2:bbbbbbb
3:ccccccccc
4:
5:eeeeeeeeeee
6:ggggggggggggg

 
通过-s合并内容,使其成行
[root@testdb ~]# paste test1.log
1
2
3
4
5
6
[root@testdb ~]# paste -s test1.log
1    2    3    4    5    6
[root@testdb ~]# paste -s test1.log test2.log 
1    2    3    4    5    6
aaaaa    bbbbbbb    ccccccccc        eeeeeeeeeee    ggggggggggggg


范例:通过脚本把账号密码合并在一行,并且用"="(等于符号)连成一行
[root@testdb ~]# cat passwd.log 
stu01
PWD01
stu02
PWD02
stu03
PWD03
stu04
PWD04
stu05
PWD05


方法一:
[root@testdb ~]# paste -sd '=
'  passwd.log  
stu01=PWD01
stu02=PWD02
stu03=PWD03
stu04=PWD04
stu05=PWD05


方法二:
[root@testdb ~]# xargs -n 2 < passwd.log |sed 's# #=#g'
stu01=PWD01
stu02=PWD02
stu03=PWD03
stu04=PWD04
stu05=PWD05


方法三:
[root@testdb ~]# sed 'N;s#
#=#g' passwd.log 
stu01=PWD01
stu02=PWD02
stu03=PWD03
stu04=PWD04
stu05=PWD05
原文地址:https://www.cnblogs.com/l10n/p/9416551.html