1、命令简介
pr:用于格式化文本文件以便打印。它允许指定输出行数、页面宽度、页眉等参数,以便将文本文件适应于打印或显示。
2、命令语法
pr [OPTION]... [FILE]...
3、命令描述
对于打印而言,对文件(文件)进行分页或列排。对于长选项,强制性参数也对短选项是强制性的。在Linux/Unix中,pr命令通过添加适当的页脚、页头和格式化的文本来准备一个文件以供打印。Pr命令实际上在页面的顶部和底部都添加了5行外边距。标题部分显示了文件最后修改的日期和时间,包括文件名和页码。
4、命令选项
选项 | 描述 |
+FIRST_PAGE[:LAST_PAGE] | 从第 FIRST_PAGE 开始 (可选:到 LAST_PAGE 结束)打印页面 |
-COLUMN, --columns=COLUMN | 输出 COLUMN 列并按列打印, 除非使用 -a 选项。平衡每页列中的行数。 |
-a, --across | 横向打印列,与 -COLUMN 一起使用 |
-c, --show-control-chars | 使用帽子符号(^G)和八进制反斜杠符号表示控制字符 |
-d, --double-space | 双倍行距输出 |
-D, --date-format=FORMAT | 使用指定的 FORMAT 作为页眉日期格式 |
-e[CHAR[WIDTH]], --expand-tabs[=CHAR[WIDTH]] | 将输入中的 CHAR(TAB)扩展为制表符宽度 WIDTH(8) |
-F, -f, --form-feed | 使用换页符分隔页面而不是换行符 (-F 为 3 行页头,不使用 -F 为 5 行页头和页尾) |
-h HEADER, --header=HEADER | 使用居中的 HEADER 作为页眉,而不是文件名 |
-i[CHAR[WIDTH]], --output-tabs[=CHAR[WIDTH]] | 将空格替换为 CHAR(TAB)以制表符宽度 WIDTH(8) |
-J, --join-lines | 合并完整行,关闭 -W 行截断,不进行列对齐, 使用 --sep-string[=STRING] 设置分隔符 |
-l PAGE_LENGTH, --length=PAGE_LENGTH | 设置页面长度为 PAGE_LENGTH(66)行 (默认 56 行文本,使用 -F 为 63 行) |
-m, --merge | 并行打印所有文件,每个文件在一个列中, 截断行,但使用 -J 合并完整长度的行 |
-n[SEP[DIGITS]], --number-lines[=SEP[DIGITS]] | 编号行,使用 DIGITS(5)位数字, 然后 SEP(TAB),默认从第一行开始计数 |
-N NUMBER, --first-line-number=NUMBER | 从第一页的第一行开始使用 NUMBER 进行计数, 参见 +FIRST_PAGE |
-o MARGIN, --indent=MARGIN | 每行偏移 MARGIN(零)个空格, 不影响 -w 或 -W,MARGIN 将添加到 PAGE_WIDTH |
-r, --no-file-warnings | 当无法打开文件时省略警告 |
-s[CHAR],--separator[=CHAR] | 用单个字符分隔列, 默认情况下 CHAR 是 字符(不使用 -w 时) |
-SSTRING, --sep-string[=STRING] | 用 STRING 分隔列,如果未指定 -S, 则默认分隔符 (使用 -J)或 (其他情况) |
-t, --omit-header | 省略页面页眉和页尾 |
-T, --omit-pagination | 省略页面页眉和页尾, 消除输入文件中的换页符设置 |
-v, --show-nonprinting | 使用八进制反斜杠表示非打印字符 |
-w PAGE_WIDTH, --width=PAGE_WIDTH | 仅用于多文本列输出, 设置页面宽度为 PAGE_WIDTH(72)字符, -s[char] 关闭此设置 |
-W PAGE_WIDTH, --page-width=PAGE_WIDTH | 始终将页面宽度设置为 PAGE_WIDTH(72)字符, 截断行,除非设置了 -J 选项,不会干扰 -S 或 -s |
5、使用示例
1)打印文件 file.txt,每页显示 40 行,带有页眉和页码
pr -n 40 -l file.txt
2)将多个文件 file1.txt 和 file2.txt 并排打印,每页显示 30 行
pr -m -n 30 file1.txt file2.txt
3)打印文件 file.txt,指定页面宽度为 80 列
pr -w 80 file.txt
4)逆序打印文件 file.txt
pr -r file.txt