paste命令会把每个文件以列对列的方式,一列列地加以合并 ,他就是相当于把两个不同的文件内容粘贴在一起,形成新的文件。
注意:paste默认粘贴方式以列的方式粘贴,但是并不是不能以行的方式粘贴,加上-s选项就可以行方式粘贴。
语法格式
paste [参数] [文件1] [文件2]
常用参数:
-d | 默认域的分隔符是空格或tab键,设置新的域分隔符 |
-s | 将每个文件粘贴成一行 |
-- | 从标准输入中读取数据 |
参考实例
将file_2和file_2粘贴成一个新的文件:
[root@coonote ~]# cat file_1
aaa
bbb
ccc
ddd
eee
[root@coonote ~]# cat file_2
aaa
bbb
ccc
ddd
eee
[root@coonote ~]# paste file_1 file_2
aaa aaa
bbb bbb
ccc ccc
ddd ddd
eee eee
设置域分隔符为:粘贴成新的文件:
[root@coonote ~]# paste -d: file_1 file_2
aaa:aaa
bbb:bbb
ccc:ccc
ddd:ddd
eee:eee
将每个文件粘贴成一行:
[root@coonote ~]# cat file_1
aaa
bbb
ccc
ddd
eee
[root@coonote ~]# cat file_2
aaa
bbb
ccc
ddd
eee
[root@coonote ~]# paste -d: -s file_1 file_2
aaa:bbb:ccc:ddd:eee
aaa:bbb:ccc:ddd:eee
从标准输入中读取数据,每行显示5个文件名:
[root@coonote ~]# ls | paste -d" " - - - - -
anaconda-ks.cfg dir_1 file1 file_1 file_1.db
file_2 file_3 file_4 file_5 file_6
file.db file_hobby_1 file_hobby.db file_hobby_sort.db file_sort.db
initial-setup-ks.cfg testfile