云网牛站
所在位置:首页 > Linux命令 > 在Linux中使用Paste命令来合并行,包括使用Paste命令技巧及注意事项

在Linux中使用Paste命令来合并行,包括使用Paste命令技巧及注意事项

2019-09-23 09:26:22作者:但佳稿源:云网牛站

在本文中,我们将教你如何使用Paste命令,包括使用Paste命令技巧及注意事项。Paste是允许你水平合并文件行的命令,它输出由指定为参数的每个文件的顺序对应的行组成的行,并用制表符分隔。

在Linux中使用Paste命令来合并行,包括使用Paste命令技巧及注意事项

 

如何使用Paste命令

paste是鲜为人知的Linux和Unix命令行实用工具之一。

paste命令的一般语法如下:

paste [OPTION].. [FILE]...

如果没有提供输入文件,或者在将-用作参数时,paste将使用标准输入。

假设我们有以下文件。

1]、file1:

Iron Man

Thor

Captain America

Hulk

Spider Man

2]、file2:

Black Widow

Captain Marvel

Dark Phoenix

Nebula

在不带选项的情况下调用时,paste将读取作为参数给出的所有文件,并水平合并文件的相应行,并以空格分隔:

$ paste file1 file2

在Linux中使用Paste命令来合并行,包括使用Paste命令技巧及注意事项

除了将输出显示在屏幕上之外,你还可以使用>,>>运算符将其重定向到文件:

$ paste file1 file2 > file3

如果文件不存在,则会创建它,>运算符将覆盖现有文件,而>>运算符将输出附加到文件。

-d,-delimiters选项使你可以指定用作分隔符的字符列表,而不是默认的TAB分隔符。

每个定界符被连续使用,列表用完后,paste将从第一个定界符再次开始。

要将_(下划线)字符用作分隔符而不是TAB,请输入:

$ paste -d '_' file1 file2

Iron Man_Black Widow

Thor_Captain Marvel

Captain America_Dark Phoenix

Hulk_Nebula

Spider Man_

这是使用两个定界符的示例:

$ paste -d '%|' file1 file2 file1

第一个和第二个文件中的行用分隔符列表中的第一个字符分隔,第二和第三文件行用第二个定界符分隔。

如果提供了更多文件,则paste将从列表的开头再次开始:

Iron Man%Black Widow|Iron Man

Thor%Captain Marvel|Thor

Captain America%Dark Phoenix|Captain America

Hulk%Nebula|Hulk

Spider Man%|Spider Man  

-s,-serial选项使paste一次显示一个文件的行,而不是每个文件的一行:

$ paste -s file1 file2

该命令将合并给定文件中的所有行,并在单独的行中合并:

在Linux中使用Paste命令来合并行,包括使用Paste命令技巧及注意事项

与-z,--zero-terminated选项一起使用时,paste使用空字符来分隔项目,而不是使用默认的换行符,当paste与find -print0和xargs -0命令结合使用以处理包含特殊字符的文件名时,此行为很方便。

 

结论

paste命令用于合并给定文件的相应行,以上就是该命令的技巧及注意事项介绍。

 

相关主题

paster命令_Linux paster命令使用详解:整合到对应一行里写到标准输出

Linux命令子频道
精选文章
热门文章