linux shell paste命令用法

paste用法
c u t用来从文本文件或标准输出中抽取数据列或者域,然后再用p a s t e可以将这些数据粘贴起来形成相关文件。粘贴两个不同来源的数据时,首先需将其分类,并确保两个文件行数相同。
p a s t e将按行将不同文件行信息放在一行。缺省情况下, p a s t e连接时,用空格或t a b键分隔新行中不同文本,除非指定- d选项,它将成为域分隔符。
p a s t e格式为;
  1. paste -d -s -file1 file2


选项含义如下:
-d 指定不同于空格或t a b键的域分隔符。例如用@分隔域,使用- d @。
-s 将每个文件合并成行而不是按行粘贴。
- 使用标准输入。例如ls -l |paste ,意即只在一列上显示输出。


从前面的剪切中取得下述两个文件:
  1. [sam@chenwy sam]$ cut -d" " -f 2 pers2 >pas1
  2. [sam@chenwy sam]$ cat pas1
  3. ID897
  4. ID666
  5. ID982


  1. [sam@chenwy sam]$ cut -d" " -f1 pers >pas2
  2. [sam@chenwy sam]$ cat pas2
  3. P.Jones
  4. S.Round
  5. L.Clip



基本p a s t e命令将之粘贴成两列:
  1. [sam@chenwy sam]$ paste pas1 pas2
  2. ID897   P.Jones
  3. ID666   S.Round
  4. ID982   L.Clip



指定列
通过交换文件名即可指定哪一列先粘:
  1. [sam@chenwy sam]$ paste pas2 pas1
  2. P.Jones ID897
  3. S.Round ID666
  4. L.Clip  ID982



使用不同的域分隔符
要创建不同于空格或t a b键的域分隔符,使用- d选项。下面的例子用冒号做域分隔符。
  1. [sam@chenwy sam]$ paste -d: pas2 pas1
  2. P.Jones:ID897
  3. S.Round:ID666
  4. L.Clip:ID982



要合并两行,而不是按行粘贴,可以使用- s选项。下面的例子中,第一行粘贴为名字,第二行是I D号。
  1. [sam@chenwy sam]$ paste -s pas2 pas1
  2. P.Jones S.Round L.Clip
  3. ID897   ID666   ID982



paste命令管道输入
p a s t e命令还有一个很有用的选项( -)。意即对每一个( -),从标准输入中读一次数据。
使用空格作域分隔符,以一个4列格式显示目录列表。方法如下:
  1. [sam@chenwy sam]$ ls | paste -d" " - - - - -
  2. 1.bak 1.txt append.sed backll.ee change.sed
  3. data.f data.txt delete_me_and_die dht dir1
  4. ......................


一行显示四个文件,以空格分开

  1. [sam@chenwy sam]$ ls | paste -d: - - - - -
  2. 1.bak:1.txt:append.sed:backll.ee:change.sed
  3. data.f:data.txt:delete_me_and_die:dht:dir1
  4. .....................


一行显示四个文件,以冒号:分开

也可以以一列格式显示输出:
  1. [sam@chenwy sam]$ ls | paste -d" " -
  2. 1.bak
  3. 1.txt
  4. append.sed
  5. backll.ee
  6. ..................
  7. 一行显示一个文件
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值