[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.2 tac: ファイルを結合し、ファイルごとに逆順で書き出す

tac は、各 file (‘-’ は標準入力を意味する) を、file ごとにレコード (records、デフォルトでは行) の順番を逆にして、標準出力にコピーする。 file が一つも指定されていない場合は、標準入力から読み込む。

書式:

 
tac [option]… [file]…

レコード (records) は、ある文字列 (デフォルトでは改行) が出現することによって区切られる。出力の際、デフォルトでは、この区切り文字列は、 ファイル中でその区切り文字列の直前にあるレコードの末尾に付加される。

このプログラムでは以下のオプションが使用できる。参照: 共通オプション.

-b
--before

出力の際、区切り文字列は、ファイル中でその区切り文字列の直後に来るレコードの先頭に付加される。

-r
--regex

区切り文字列を正規表現として処理する。

-s separator
--separator=separator

改行の代わりに separator をレコード区切り文字列 (record separator) として使用する。注意すべきは、separator に空文字列を指定すると、 ゼロバイトを指定したことになることだ。すなわち、入出力レコードが ASCII NUL で区切られることになる。

テキストファイルとバイナリファイルを区別する MS-DOS のようなシステムでは、 tac はバイナリモードで読み書きを行う。

終了ステータス 0 は成功を示し、0 以外の値は失敗を示す。

用例:

 
# ファイルを一字一字逆にする。
tac -r -s 'x\|[^x]'

This document was generated on June 7, 2022 using texi2html 1.82.