PR(1)

名前
pr - 印刷用にファイルのページづけ・段組みを行う

書式
pr [+FIRST_PAGE[:LAST_PAGE]] [-COLUMN] [-acdfmrtvFJT] [-e[IN-TABCHAR[IN-TABWIDTH]] [-h HEADER] [-i[OUT-TABCHAR[OUT-TABWIDTH]] [-l PAGE_LENGTH] [-n[NUMBER-SEPARATOR[DIGITS]] [-o MARGIN] [-s[SEP-CHAR]] [-w PAGE_WIDTH] [-D DATEFORMAT] [-N LINE_NUMBER] [-S[SEP-STRING]] [-W PAGE_WIDTH] [--across] [--columns=COLUMN] [--date=DATEFORMAT] [--double--space] [--expand-tabs[=IN-TABCHAR[IN-TABWIDTH]] [--form-feed] [--header HEADER] [--indent=MARGIN] [--length PAGE_LENGTH] [--merge] [--number-lines[=NUMBER-SEPARATOR[DIGITS]] [--no-file-warnings] [--output-tabs[=OUT-TABCHAR[OUT-TABWIDTH]] [--omit-header] [--pages=FIRST_PAGE[:LAST_PAGE]] [--page_width=PAGE_WIDTH] [--separator[=SEP-CHAR]] [--sep-string[=SEP-STRING]] [--show-control-chars] [--show-nonprinting] [--width=PAGE_WIDTH] [FILE...] pr [--help] [--version]

説明
pr は FILE の内容にページを付けて標準出力に書き出す。 オプションで指定すれば段組みして出力することもできる。 FILE が 1 つも与えられないと標準入力から読み込む。また FILE が `-' だった場合には、そのファイルには標準入力が用いられる。 デフォルトでは、それぞれのページに 5 行のヘッダがつく。 ヘッダは 2 行の空行、日付・ファイル名・ページ番号の行、2 行の空行からなる。 各ページの末尾には 5 行の空行からなるフッタも出力される。 デフォルトでは PAGE_LENGTH は 66 行で、ヘッダのテキスト行は PAGE_WIDTH 桁 (デフォルトは 72 桁) を幅いっぱいに用い、 `yy-mm-dd HH:MM String Page nnnn' という形式で出力される。 ここで String はまん中におかれる文字列である。 入力にフォームフィードがあると、そこで出力は改頁される。 フォームフィードが続くと空のページができる。 段は、おのおの等しい幅を持ち、デフォルトではスペースで区切られる。 -J オプションが指定されない限り、行は常に PAGE_WIDTH で切り捨てられる。1 段の出力では、 行の切り捨てはデフォルトでは行われない (切り捨てを行うには -W オプションを使う)。

オプション

+FIRST_PAGE[:LAST_PAGE]

--pages=FIRST_PAGE[:LAST_PAGE]
    FIRST_PAGE から LAST_PAGE までを出力する。 LAST_PAGE を省略するとファイル末尾までを出力する。 スキップするページ数を評価するとき、入力ファイルにある フォームフィードは改ページとみなされる。 +FIRST_PAGE があってもなくても、出力のページ番号と行番号は同じで、 入力の最初のページからカウントが開始される (出力ページの最初からではない)。 しかしページ番号の振り方は -N によって変更することもできる。

-COLUMN

--columns=COLUMN
    FILE それぞれが COLUMN 段の出力になる (デフォルトは 1)。 段の幅は PAGE_WIDTH から自動的に計算され、 それぞれのページにおける各段の行数は調整される。 段に入りきらない行は切り捨てられる。 --columns は -m と同時には指定できない。

-a, --across
    それぞれの FILE で、段組みの行の進行方向を縦でなく横にする。 COLUMN は 2 以上でなければならない。 段に収まらない行の余計な分は切り捨てられる。

-c, --show-control-chars

-d, --double-space
    行間に空行を挿入する (ダブルスペース表示)。

-e[IN-TABCHAR[IN-TABWIDTH]]

--expand-tabs[=IN-TABCHAR[IN-TABWIDTH]],
    入力のタブをスペースに展開する。 IN-TABCHAR は入力のタブ文字を指定する (省略可: デフォルトは <TAB>)。 IN-TABWIDTH はタブの幅を指定する (省略可: デフォルトは 8)。

-f, -F, --form-feed
    改ページに複数の改行ではなくフォームフィード (^L) を使用し、 ヘッダは 3 行形式にする (最初の空行 2 つとフッタは省略される)。 1 ページあたり 66 行というデフォルトの設定は変更されないが、 1 ページあたりのテキスト行はデフォルトの 56 行から 63 行に変更される。

-h HEADER, --header=HEADER
    ヘッダに表示される FILE の名前を文字列 HEADER に置き換える。 `yy-mm-dd HH:MM HEADER Page nnnn' が PAGE_WIDTH より長くなると、左側で行の切り捨て (`*' マークされる) が 行われる。`-h ""' とするとヘッダ行は空になる。

-i[OUT-TABCHAR[OUT-TABWIDTH]]

--output-tabs[=OUT-TABCHAR[OUT-TABWIDTH]]
    出力のスペースをタブに圧縮する。 OUT-TABCHAR は出力のタブ文字を指定する (省略可: デフォルトは <TAB>)。 OUT-TABWIDTH はタブの幅を指定する (省略可: デフォルトは 8)。

-J, --join-lines
    行の内容すべてをマージする。段組みオプション -COLUMN, `-a -COLUMN', -m とともに指定すると、 -W や -w の行切り捨てを無効にする。段の揃えは行わない。 段の区切り文字は <TAB> に変更される。 ただし -S による上書きは可能である。

-l PAGE_LENGTH, --length=PAGE_LENGTH
    (ヘッダとフッタを含めた) ページ長を PAGE_LENGTH 行に設定する。デフォルトは 66 行。 PAGE_LENGTH が 10 行以下の場合 (および -F も指定された場合は 3 行以下の場合) は、 page-length が 10 以下の場合には、 -T オプションが指定されたかのように、 ヘッダとフッタが省略され、入力ファイルのフォームフィードは無視される。

-m, --merge
    全てのファイルを並べて出力する。1 ファイルが 1 段となる。 行の長さが段に収まらない場合、はみ出た分は切り捨てられる。 FILE に空のページが (フォームフィードによって) 存在すると、 空の段が出力される。ただし SEPARATOR によるマークはされる。(しかし全ての段が空となるページでは、 区切り文字も行番号も表示されない。) デフォルトのヘッダは `yy-mm-dd HH:MM <blanks> Page nnnn' となるが、 -h HEADER を同時に指定すれば、まん中の部分を記述するようにできる。 -S[SEP-CHAR] も同時に指定できる。

-n[NUMBER-SEPARATOR[DIGITS]]

--number-lines[=NUMBER-SEPARATOR[DIGITS]]
    各段の前に行番号をふる。複数ファイルの並列表示 (-m) の場合は、行の先頭だけに番号をふる。 行番号の開始は、デフォルトでは入力ファイルの最初の行である (印刷された最初の行ではない。 -N と -PAGES を見よ)。 NUMBER-SEPARATOR は行番号とテキストの間に入る文字を指定する。 デフォルトはスペース。桁数が変わらない場合は <TAB> に圧縮される。 DIGITS は行番号の桁数を指定する (省略可: デフォルトは 5)。

-o MARGIN, --indent=MARGIN
    各行を MARGINP 文字分のスペースでインデントする (デフォルトは 0)。 つまり左マージンを設定する。 総ページ幅は MARGIN + PAGE_WIDTH になる。行番号つきの段組み出力では溢れることがあるかもしれない。

-r, --no-file-warnings
    コマンドラインで与えられた FILE がオープンできない場合でも、警告メッセージを表示しない。 (しかしファイルのオープンに失敗した場合に 0 以外の終了ステータスを返す動作は変らない。)

-s[SEP-CHAR], --separator[=SEP-CHAR]
    段組のセパレータを SEP-CHAR 文字にする。 SEP-CHAR のデフォルトは、 -s と同時に -w を指定した場合は空文字列、それ以外の場合は <TAB>。 -w と組み合わせた場合には、段の行切り捨てが行われないという副作用がある。

-S[SEP-STRING], --sep-string[=SEP-STRING]
    段組みのセパレータを SEP-STRING にする (デフォルトは空文字列)。 短縮形式 -S は推奨されない。

-t, --omit-header
    各ページのヘッダ (とフッタ) を印字しない。 また改ページ処理も行わない (ページ末に空行やフォームフィードを入れない)。 ページ構造は生成されないが、入力ファイルのフォームフィードは残る (つまりあらかじめ定義されたページ区切りは変更されない)。 -t や -T は他のオプションと組み合わせると便利である。 例えば `-t -e4' は入力の <TAB> を 4 つのスペースに変換する以外は 何も変更しない。-t は -h を無効にする。

-v, --show-nonprinting
    印字できない文字を、バックスラッシュ表記の 8 進数で出力する。

-w PAGE_WIDTH, --width=PAGE_WIDTH
    複数段の出力に限り、ページは場を PAGE_WIDTH 文字に設定し (デフォルトは 72)、行の余分を切り捨てる。

-D DATEFORMAT, --date=DATEFORMAT
    DATEFORMAT をヘッダの日付書式として使用する。 または日付を指定するために使用する。 詳細は date(1) を見よ。

-N LINE_NUMBER, --first-line-number=LINE_NUMBER
    印刷された最初のページの最初の行を LINE_NUMBER 行とし、そこから行カウントを開始する。

-S [SEP-STRING], --sep-string[=SEP-STRING]
    出力の段組みの区切りを文字列 SEP-STRING にする。

-T  ヘッダ (とフッタ) を出力しない。 さらに入力にあるフォームフィードをすべて無効にする。

-W PAGE_WIDTH, --page_width=PAGE_WIDTH
    段組みが 1 段の場合でも複数の場合でも、ページの幅を PAGE_WIDTH 文字にして (デフォルトは 72)、行の余分を切り捨てる。 -W の指定も段組みのオプションも指定されなければ、 行の余分の切り捨ては行われない (ヘッダは例外で、常に切り捨てが行われる)。

--help
    標準出力に使用方法のメッセージを出力して正常終了する。

--version
    標準出力にバージョン情報を出力して正常終了する。

POSIX 向けの注意
大文字 1 文字のオプションは小文字のオプションより優先される。 しかし後の方に再定義するほうが POSIX には準拠している。 また、1 文字のオプションへの引数は、 POSIX の規定ではオプションの文字と分離できない (例えば `-s a' は `-sa' と書かなければならない)。

注意
プログラムのバグについては bug-textutils@gnu.org に報告してください。
man ページは Ragnar Hojland Espinosa <ragnar@ragnar-hojland.com> が作成しました。