介绍

cut用来从文本文件或标准输出中抽取数据列或者域,然后再用paste可以将这些数据粘贴起来形成相关文件。粘贴两个不同来源的数据时,首先需将其分类,并确保两个文件行数相同。

paste将按行将不同文件行信息放在一行。缺省情况下,paste连接时,用空格或tab键分隔新行中不同文本,除非指定- d选项,它将成为域分隔符。

paste格式为:

paste -d -s -file1 file2

选项含义如下:

-d 指定不同于空格或t a b键的域分隔符。例如用@分隔域,使用- d @。

-s 将每个文件合并成行而不是按行粘贴。

- 使用标准输入。例如ls -l |paste ,意即只在一列上显示输出。

[root@linux-node1 ~]# cat file1
a
b
c
d
[root@linux-node1 ~]# cat file2
  hisk01
  hisk02
  hisk03
  hisk04
[root@linux-node1 ~]# paste -d -s file1file2
a-  hisk01
b-  hisk02
c-  hisk03
d-  hisk04

基本命令

[root@linux-node1 ~]# paste file1 file2
a     hisk01
b     hisk02
c     hisk03
d     hisk04

指定列

通过交换文件名即可指定哪一列先粘:

[root@linux-node1 ~]# paste file2 file1
  hisk01    a
  hisk02    b
  hisk03    c
  hisk04    d

使用不同的域分隔符

要创建不同于空格或tab键的域分隔符,使用- d选项。下面的例子用冒号做域分隔符。

[root@linux-node1 ~]# paste -d: file1 file2
a:  hisk01
b:  hisk02
c:  hisk03
d:  hisk04
[root@linux-node1 ~]# paste -d+ file1 file2
a+  hisk01
b+  hisk02
c+  hisk03
d+  hisk04

要合并两行,而不是按行粘贴,可以使用- s选项。下面的例子中,第一行粘贴为名字,第二行是I D号。

[root@linux-node1 ~]# paste -s file1 file2
a   b   c   d
  hisk01     hisk02      hisk03      hisk04

paste命令管道输入

paste命令还有一个很有用的选项( -)。意即对每一个( -),从标准输入中读一次数据。使用空格作域分隔符,以一个4列格式显示目录列表。

方法如下:

[root@linux-node1 ]# ll
total
drwxr-xr-x  root root  4096Mar  : bin
drwxr-xr-x  root root  4096Mar  : conf
drwxr-xr-x  root root  4096Mar  : lib
-rw-r--r--  root root  Nov  : LICENSE
drwxr-xr-x  root root  4096Mar  : logs
-rw-r--r--  root root  1444Nov   : NOTICE
-rw-r--r--  root root  6741Nov   : RELEASE-NOTES
-rw-r--r--  root root  Nov  : RUNNING.txt
drwxr-xr-x  root root    29Mar  : temp
drwxr-xr-x  root root    32Mar  : webapps
drwxr-xr-x  root root    21Mar  : work
[root@linux-node1 ]# ls | paste -d"" - - - -
bin conf lib LICENSE
logs NOTICE RELEASE-NOTES RUNNING.txt
temp webapps work
[root@linux-node1 ]# ls | paste -d"" - - - - -
bin conf lib LICENSE logs
NOTICE RELEASE-NOTES RUNNING.txt temp webapps
work   

Linux命令之paste的更多相关文章

  1. 《paste命令》-linux命令五分钟系列之二十

    本原创文章属于<Linux大棚>博客,博客地址为http://roclinux.cn.文章作者为rocrocket. 为了防止某些网站的恶性转载,特在每篇文章前加入此信息,还望读者体谅. ...

  2. Linux命令整理中...

    Linux命令整理中... 最常用命令(我最近最常用的一般放在前面tipsbychsry) clear 清屏 date 显示日期 cal 显示日历 cal 2014 显示2014年的日历 shutdo ...

  3. 最有用的Linux命令行使用技巧集锦

    最近在Quora上看到一个问答题目,关于在高效率Linux用户节省时间Tips.将该题目的回答进行学习总结,加上自己的一些经验,记录如下,方便自己和大家参考. 下面介绍的都是一些命令行工具,这些工具在 ...

  4. Linux 命令速查

    学生信,Linux是最最基本的技能,要尽量将自己的工作平台转移到Linux,编程写脚本,这样会极大的提升工作效率,找工作时也不会太怂.Linux所有的任务都是通过命令来完成的,具有高度的统一性.Lin ...

  5. 运维必须掌握的150个Linux命令

    线上查询及帮助命令(1个)man 目录操作命令(6个)ls tree pwd mkdir rmdir cd 文件操作命令(7个)touch cp mv rm ln find rename 文件查看及处 ...

  6. linux 命令中英文对照,收集

    linux 命令中英文对照,收集   linux 命令英文全文 Is Linux CLI case-sensitive? The answer is, yes. If you try to run L ...

  7. Linux命令行文本工具

    浏览文件 cat 查看文件内容 more 以翻页形式查看文件内容(只能向下翻页) less 以翻页形式查看文件内容(可以上下翻页) head 查看文件的头几行(默认10行) tail 查看文件的尾几行 ...

  8. 这些Linux命令,让你的工作事半功倍!

    这些Linux命令,让你的工作事半功倍! 最近都在和Linux打交道,感觉还不错.我觉得Linux相比windows比较麻烦的就是很多东西都要用命令来控制,当然,这也是很多人喜欢linux的原因,比较 ...

  9. Linux 命令(二)

    man help:线上查询及帮助命令 命令  --help:简单帮助 help  cd:查看一些Linux命令行的一些内置命令 文件和目操作命令(19个) ls  cd  cp  find  mkdi ...

随机推荐

  1. List<实体>与List<String>数据互转

    1.List<实体>数据: public List<Device> queryOSDevice(String cpu,String ip,String name){ Strin ...

  2. Servlet执行时一般实现哪几个方法?

    public void init(ServletConfig config) public ServletConfig getServletConfig() public String getServ ...

  3. 报错:numRecords must not be negative

    报错的原因:删除已经使用过的kafka topic,然后新建同名topic 解决方法:把topic名字换一下 (有其他更好的解决方法,可以不修改topic名)

  4. 【DB2】NOT IN使用中的大坑

    1.环境准备 ------建表TB DROP TABLE TB; CREATE TABLE TB ( ID INTEGER, LEVEL_DETAIL ) ); INSERT INTO TB (ID, ...

  5. 基于python实现的DDoS

    目录 一个简单的网络僵尸程序 一个简单的DOS攻击程序 整合网络僵尸和DoS攻击--DDoS 代码地址如下:http://www.demodashi.com/demo/12002.html 本例子包含 ...

  6. 《深入浅出mfc》 第1章 笔记

    需要什么函数库(.lib) windows支持动态链接库,应用程序所调用 的windows api 函数是在“执行期间“才链接上的.Windows程序调用 可以分为 C Runtimes以及windo ...

  7. 编写C函数的技术-《lua程序设计》 27章 学习

    1.数组操作 void lua_rawgeti(lua_State * L ,int index,int key) void lua_rewseti(lua_State * L,int index,i ...

  8. JDK1.9环境变量配置

    JAVA_HOME C:\Program Files\Java\jdk-9.0.1 JRE_HOME C:\Program Files\Java\jre-9.0.1 PATH .;%JAVA_HOME ...

  9. [容器]gcr.io镜像下载

    下载gcr.io的镜像hosts文件  把下面两行加入到/etc/hosts中. 更多在这里http://wst.so/files/hosts 61.91.161.217 gcr.io 61.91.1 ...

  10. C++语言基础(3)-类和对象

    类是创建对象的模板,一个类可以创建多个对象,每个对象都是类类型的一个变量:创建对象的过程也叫类的实例化.每个对象都是类的一个具体实例(Instance),拥有类的成员变量和成员函数. 一.类的定义 一 ...