版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/daguanjia11/article/details/83088165
paste命令和cut命令的效果正好相反,paste是用来合并行的,常用来合并多个文件到一个文件,合并多行到一行等。下面来看几个简单的例子
示例1:合并多个文件
假设有两个文件,分别是id.txt和name.txt,内容如下:
$ cat id.txt
1
2
3
4
5
$ cat name.txt
lucy
tom
tony
fred
john
使用paste
命令来合并两个(或多个)文件,用法是paste file1 file2 ...
$ paste id.txt name.txt
1 lucy
2 tom
3 tony
4 fred
5 john
使用-d
参数来指定分隔符
paste命令默认使用制表符作为分隔符,可以使用paste -dchar file1 file2 ...
的形式来指定分隔符
$ paste -d- id.txt name.txt
1-lucy
2-tom
3-tony
4-fred
5-john
示例2:合并单个文件的多行
用paste -s file
可以将单个文件的所有行合并到一行
$ paste -s name.txt
lucy tom tony fred john
还可以使用-d
参数指定分隔符
$ paste -s -d, name.txt
lucy,tom,tony,fred,john
示例3:在linux管道中具有更多可能
假设当前目录下有两个文件
$ ls
id.txt name.txt
我希望将两个文件以一个特定的分隔符隔开,就可以使用paste命令
$ ls | paste -s -d, -
id.txt,name.txt
最后一个’-’,表示来自标准输入中的所有行,也就是ls命令的标准输出。