/usr/bin/paste [options] [file...]
paste 实用程序会串联给定输入文件的对应行,并将生成的行写入标准输出。
paste 的缺省操作是串联输入文件的对应行。除了最后一个输入文件的行以外,每行的 NEWLINE 字符都替换为 TAB 字符。
如果在一个或多个(但不是所有)输入文件上检测到 EOF(文件结尾)条件,paste 会按照从检测到 EOF 的文件读取空行的方式执行操作,除非指定了 –s 选项。
支持以下选项:
除非反斜杠字符 (\) 出现在列表中,否则列表中的每个字符都是指定分隔符的元素。如果反斜杠字符出现在列表中,反斜杠字符及其后面的一个或多个字符都是指定分隔符的元素,具体如下文所示。这些元素会指定要使用的一个或多个分隔符,而非缺省的 TAB 字符,用于替换输入行的 NEWLINE 字符。列表中的元素会循环使用。也就是说,列表中的元素用遍后,则会重新使用列表中的第一个元素。
指定 –s 选项时:
不修改文件中的最后一个 NEWLINE 字符。
每个文件操作数都处理完毕后,将分隔符重置为列表中的第一个元素。
未指定此选项时:
不修改最后一个文件指定的文件中的 NEWLINE 字符。
每个文件的行都处理完毕后,将分隔符重置为列表中的第一个元素。
如果反斜杠字符出现在列表中,使用反斜杠字符及其后面的字符表示以下分隔符:
NEWLINE 字符。
TAB 字符。
反斜杠字符。
空字符串(不是 null 字符)。如果 0 后面紧跟字符 x、字符 X 或 LC_CTYPE 数字关键字定义的任何字符,则结果不确定。
如果反斜杠后面跟有任何其他字符,则结果不确定。
按命令行顺序串联各输入文件的所有行。每个输入文件的每一行(最后一行除外)的 NEWLINE 字符都替换为 TAB 字符,除非 –d 选项另有指定。
支持下列操作数:
输入文件的路径名称。如果为一个或多个文件指定,则使用标准输入。为点 (.) 的每个实例循环读取标准输入,一次一行。实现支持跳过至少 12 个文件操作数。
有关 paste 遇到大于或等于 2 GB(231 字节)文件时行为的说明,请参见 largefile(5)。
以下是在一列中列出目录的示例:
example% ls | paste -d" " −示例 2 在四列中列出目录
以下是在四列中列出目录的示例:
example% ls | paste − − − −示例 3 将一个文件的多个行对合并为多个单行
以下是将文件的多个行对合并为多个单行的示例:
example% paste -s -d"\ t\ n" file
有关影响 paste 执行的以下环境变量的描述,请参见 environ(5):LANG、LC_ALL、LC_CTYPE、LC_MESSAGES 和 NLSPATH。
将返回以下退出值:
成功完成。
出现错误。
有关下列属性的说明,请参见 attributes(5):
|
cut(1)、grep(1)、attributes(5)、environ(5)、largefile(5)、standards(5)