paste命令用于合并文件的列。

paste指令会把每个文件以列对列的方式,一列列地加以合并。

语法

paste [-s][-d <间隔字符>][--help][--version][文件...][-s][-d <间隔字符>][--help][--version][文件...]

参数

  • -d<间隔字符>或--delimiters=<间隔字符>  用指定的间隔字符取代跳格字符。
  • -s或--serial  串列进行而非平行处理。
  • --help  在线帮助。
  • --version  显示帮助信息。
  • [文件…] 指定操作的文件路径

详解:

1 paste的拼凑原理是什么?

这个很简单,和cut的原理几乎一样,就是将几个文件的相应行用制表符连接起来,并输出到标准输出。

paste最简单的使用方法是:

[rocrocket@rocrocket programming]$ cat p1.txt

1
2
3
[rocrocket@rocrocket programming]$ cat p2.txt
a
b
c
[rocrocket@rocrocket programming]$ paste p1.txt p2.txt
1    a
2    b
3    c
[rocrocket@rocrocket programming]$ paste p1.txt p2.txt|sed -n l
1\ta$
2\tb$
3\tc$

看到制表符了吧,它就是默认的间隔符。

2 上面的例子是两个文件的,那三个文件呢?

当然也可以了。看看例子吧:

[rocrocket@rocrocket programming]$ cat p3.txt
I
II
III
[rocrocket@rocrocket programming]$ paste p1.txt p2.txt p3.txt
1    a    I
2    b    II
3    c    III
[rocrocket@rocrocket programming]$ paste p3.txt p2.txt p1.txt
I    a    1
II   b    2
III  c    3

可见paste的结果是和文件列表的顺序有关的。

3 我不想用制表符来间隔,我想用星号(*),可以么?

行的!使用-d符号就可以设定间隔符,这和cut没有两样。看看例子:

[rocrocket@rocrocket programming]$ paste -d '*' p3.txt p2.txt p1.txt
I*a*1
II*b*2
III*c*3

要注意一点,此处一定要把星号用引号括起来哦(单引号双引号均可),否则shell会把星号扩展为当前目录下的文件列表哦,小心小心。

4 我看过paste命令的man,里面提到了一个-s选项,我不懂是什么意思?

这个很好解释,继续上面的例子,看看这个命令:

[rocrocket@rocrocket programming]$ paste -s -d "*" p3.txt p2.txt p1.txt
I*II*III
a*b*c
1*2*3

呵呵,懂了吧,-s就是以每个文件为一个处理单元,将其中的所有行以-d设定的间隔符相连接组成一大行,输出到标准输出中。

Linux 文件管理 : paste 命令详解相关推荐

  1. Linux 文件管理 : patch 命令详解

    patch命令被用于为开放源代码软件安装补丁程序.让用户利用设置修补文件的方式,修改,更新原始文件.如果一次仅修改一个文件,可直接在命令列中下达指令依序执行.如果配合修补文件的方式则能一次修补大批文件 ...

  2. Linux下paste命令详解

    http://blog.csdn.net/andy572633/article/details/7214126 paste单词意思是粘贴.该命令主要用来将多个文件的内容合并,与cut命令完成的功能刚好 ...

  3. Linux 文件管理 : rm 命令详解

    rm命令可以删除一个目录中的一个或多个文件或目录,也可以将某个目录及其下属的所有文件及其子目录均删除掉.对于链接文件,只是删除整个链接文件,而原有文件保持不变. 注意:使用rm命令要格外小心.因为一旦 ...

  4. Linux中iptraf命令详解(IP局域网监控工具)

    2019独角兽企业重金招聘Python工程师标准>>> Linux中iptraf命令详解(IP局域网监控工具) 发布时间:2017-12-27 20:46:03   作者:佚名    ...

  5. linux ln(link) 命令详解

    linux ln(link) 命令详解 功能说明:连接文件或目录. 语 法:ln [-bdfinsv][-S <字尾备份字符串>][-V <备份方式>][--help][--v ...

  6. [老男孩笔记系列]-之linux定时任务crontab命令详解

    linux定时任务crontab命令详解 1.1指令语法 crontab [ -u user ] file crontab [ -u user ] { -l | -r | -e } 1.2指令说明 通 ...

  7. linux rm(remove) 命令详解

    linux rm(remove) 命令详解 功能说明:删除文件或目录. 语 法:rm [-dfirv][--help][--version][文件或目录...] 补充说明:执行rm指令可删除文件或目录 ...

  8. linux下dd命令详解

    linux下dd命令详解    名称: dd 使用权限: 所有使用者dd 这个指令在 manual 里的定义是 convert and copy a file 使用方式: dd [option] 如果 ...

  9. linux性能测试命令h,Linux性能测试 pmap命令详解

    Linux性能测试 pmap命令详解 这里有新鲜出炉的Linux常用命令,程序狗速度看过来! Linux Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户 ...

最新文章

  1. Android镜像文件的拆解
  2. java cookie的有效期_Java Web cookie的有效期
  3. [Dubbo实战]dubbo + zookeeper + spring 实战 (转)
  4. 判断非负整数是否是3的倍数_二、因数与倍数教案
  5. 产品开发专业认证_食品招生季食品科学与工程专业介绍
  6. django不修改数据库创外键_Django——model(建表,增删改查,外键,多对多)
  7. Servlet基础(一)
  8. 国科金:共融机器人基础理论与关键技术研究重大研究计划
  9. 【ElasticSearch】深入理解 relocating rebalance 对Elasticsearch集群的影响
  10. 死亡之ping (ping of death)
  11. 易语言 使用精易皮肤模块的 方法
  12. MATLAB实现平滑处理
  13. 气体涡轮流量计仪表系数的计算方法!
  14. gevent和requests同时使用报requests.exceptions.ReadTimeout:HTTPSConnectionPool(host='www.baidu.com', port=4
  15. sklearn-机器学习笔记
  16. HTML5的特效制作的基础介绍
  17. 三国志战略版:Daniel_威谋靡亢分析
  18. 语音识别特征—MFCC(理论篇)
  19. android 无损压缩
  20. 云栖大会·广东分会|FEC筷云股份引领产业互联网未来

热门文章

  1. SQL Server OFFSET 分页存储过程
  2. 电子电路2-CAD3-(3-22)
  3. Googlr VR SDK
  4. 适配沉浸式状态栏,状态栏字体颜色(魅族,小米,oppo)
  5. 解决“**无法访问,你可能没有权限使用网络资源,请与管理员联系,拒绝访问!
  6. C++学习 2019-1-20
  7. pb从EXCEL的数据导入数据窗口
  8. 没有“光线追踪”,赛博朋克2077就算残废?
  9. Linux 命令篇 之 Vi
  10. iOS 2018 绝密面试题+面试心得2