paste 命令学习

paste 命令学习

paste 命令会把每个文件以列对列的方式,一列列地加以合并 ,就是相当于把两个不同的文件内容粘贴在一起,形成新的文件。

[root@104 ~]# cat a.txt 
aaa
bbb
ccc
dd*
eee
dd*d
[root@104 ~]# cat b.txt 
111
222
333
444
555
[root@104 ~]# paste a.txt b.txt 
aaa	111
bbb	222
ccc	333
dd*	444
eee	555
dd*d	

在这里插入图片描述

语法

参数说明
-d默认域的分隔符是空格或 tab 键,设置新的域分隔符(即列分隔符)
-s将每个文件粘贴成一行

使用示例

默认是以列的方式合并两个文件,将文件中的所有行当成一列。命令格式如下:

​ paste 文件1 文件2 文件3…

注:合并后的结果并不会直接保存到文件,会输出到控制台,可以通过 > 重定向到某个文件中。

[root@104 ~]# cat a.txt 
aaa
bbb
ccc
dd*
eee
dd*d
[root@104 ~]# cat b.txt 
111
222
333
444
555
[root@104 ~]# paste a.txt b.txt 
aaa	111
bbb	222
ccc	333
dd*	444
eee	555
dd*d	

在这里插入图片描述

指定列分隔符

默认情况下,是以空格或制表符 tab 作为每一列之间的分隔符的,但我们可以自定义分隔符。命令格式如下:

​ paste -d 分隔符 文件1 文件2 文件3…

#默认使用空格进行分割,这里使用 -d 参数指定分隔符为 =
[root@104 ~]# 
[root@104 ~]# paste -d = a.txt b.txt 
aaa=111
bbb=222
ccc=333
dd*=444
eee=555
dd*d=
[root@104 ~]# paste -d = a.txt b.txt c.txt 
aaa=111=1q
bbb=222=3e
ccc=333=2w
dd*=444=4r
eee=555=
dd*d==

在这里插入图片描述

以行的方式合并多个文件

paste 既可以以列的形式粘贴合并,也可以也行的方式,默认是以列的方式。

我们将文件以行的方式进行合并,先是将一个文件的所有行合并成一行,然后再进行多个文件的合并,期间也可以指定分隔符。命令格式如下:

​ 语法:

​ paste -s 文件1 文件2 文件3…

​ 格式:

​ paste -s file1.txt file2.txt

# 以行的方式合并多个文件
[root@104 ~]# paste -s a.txt 
aaa	bbb	ccc	dd*	eee	dd*d
[root@104 ~]# paste -s a.txt b.txt 
aaa	bbb	ccc	dd*	eee	dd*d
111	222	333	444	555

# 以行的方式合并多个文件,并指定分隔符
[root@104 ~]# paste -s -d = a.txt b.txt 
aaa=bbb=ccc=dd*=eee=dd*d
111=222=333=444=555

在这里插入图片描述

 
 
 
 
 

  • 5
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值