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

5. ファイルの一部の出力

これらのコマンドは,入力の一部を出力します.


5.1 head: ファイルの最初の部分を出力

headは,それぞれのfileの最初の部分(デフォルトで10行)出力し ます.ファイルが与えられない場合や,`-'というfileが与えられた ときは標準入力から読み込みます.概要です.

 
head [option]… [file]…
head -number [option]… [file]…

1つ以上のfileが指定された場合,headは以下から成り立つ1行の ヘッダを出力します.

 
==> file name <==

それはそれぞれのfileに対する出力の前になります.

headは2つのオプションの書式を受け入れます.新しいものは数字がオプ ションの引数になるもの(`-q -n 1')で,古いものは数字があらゆるオプショ ン文字の前にあるもの(`-1q')です.

プログラムは以下のオプションを受け入れます.共通のオプション,も参照 してください.

` -countoptions'

このオプションは,最初に指定された場合のみ認識されます.countは10 進数で,-cオプションで単位文字(`b',`k',`m')や, 行数を意味する`l',そしてその他のオプション文字(`cqv')が続きま す.

` -c bytes'
` --bytes=bytes'

最初の行の代わりに,最初のbytesバイトを出力します.後置される `b'はbytesの512倍,`k'は1024倍,そして`m'は1048576 倍になります.

` -n n'
` --lines=n'

最初のn行を出力します.

` -q'
` --quiet'
` --silent'

ファイル名のヘッダを出力しません.

` -v'
` --verbose'

常にファイル名のヘッダを出力します.


5.2 tail: ファイルの最後の部分を出力

tailは,それぞれのfileの最後の部分(デフォルトで10行)出力し ます.ファイルが与えられない場合や,`-'というfileが与えられた ときは標準入力から読み込みます.概要です.

 
tail [option]… [file]…
tail -number [option]… [file]…
tail +number [option]… [file]…

1つ以上のfileが指定された場合,tailは以下から成り立つ1行の ヘッダを出力します.

 
==> file name <==

それはそれぞれのfileに対する出力の前になります.

GNU tail は,あらゆる量のデータを出力できます(tailの他のバー ジョンにはできないものもあります).ファイルを逆順にすることはファイルの 終りを出力する仕事と全く異なるので,`-r'オプション(逆順に出力)もあ りません.BSD tail (-rを伴うものの1つ)は,最大でそのバッファ の大きさまで,通常32kのファイルを逆順にすることが可能なだけです.ファイ ルを逆順にするより信頼性のある用途が広い方法は,GNU tacコマンドで す.

tailは2つのオプションの書式を受け入れます.新しいものは数字がオプ ションの引数になるもの(`-n 1')で,古いものは数字があらゆるオプショ ン文字の前にあるもの(`-1'や`+1')です.

あらゆるオプション引数が,`+'で始まる数字nの場合,tail は,ファイルの終りの代わりに,それぞれのファイルの最初からn番目の 項目で出力を開始します.

プログラムは以下のオプションを受け入れます.共通のオプション,も参照 してください.

` -count'
` +count'

このオプションは,最初に指定された場合のみ認識されます.countは10 進数で,-cオプションで単位文字(`b',`k',`m')や, 行数を意味する`l',そしてその他のオプション文字(`cfqv')が続き ます.

` -c bytes'
` --bytes=bytes'

最後の行の代わりに,最後のbytesバイトを出力します.後置される `b'はbytesの512倍,`k'は1024倍,そして`m'は1048576 倍になります.

` -f'
` --follow[=how]'

おそらくファイルが増えているので,ファイルの終りで,それ以上の文字を読み 込むことを永久に繰り返します.このオプションは,パイプから読み込まれてい るとき,無視されます.1ファイル以上が与えられた場合,出力されてるファイ ルを示すため,異なるファイルから出力を得るときはいつでも,tailは ヘッダを出力します.

このオプションで,ファイルを追跡する方法を指定する方法が2つありますが, その違いは,続くファイルが削除されたか名前を変更されたときのみ,通知可能 です.リンクが無くなった後でも,増え続けるファイルの終りの追跡を続けたい 場合は,`--follow=descriptor'を使用してください.これはデフォルトの 動作ですが,回転(rotate)される(削除や名前の変更がなされ,再び開かれる)ロ グファイルを追跡しているときは不便です.その場合,他のプログラムにより削 除され再作成されたかどうかを周期的に見て,再び開かれる指名されたファイル を追跡するため,`--follow=name'を使用してください.

使用している方法にかかわらず,追跡しているファイルが縮まっていると決定さ れた場合,tailはfileが切り詰められたことを告げるメッセージを出力 し,新たに決定された終端からファイルの終りを再追跡しはじめます.

ファイルが削除されたとき,tailの動作は,名前で続けるか記述子で続 けるかに依存します.名前で続けるとき,tailはファイルが削除された ことと,その効果にメッセージを与えることが検出でき,`--retry'が指定 されている場合,ファイルが再び現れたかどうかを見るため,周期的な調査を続 けるでしょう.記述子で続けるとき,tailはファイルのリンクが切れた り名前が変更されたことを検出せず,メッセージを発しません.ファイルは既に 元の名前でアクセスできませんが,まだ増加しているかもしれません.

オプション値の`descriptor'と`name'はオプションの長い形式でのみ 指定でき,`-f'では指定できません.

` --retry'

このオプションは,名前で続けるときのみ意味があります.このオプションが無 い場合,tailが,存在していない,またはそれ以外のアクセスできない ファイルに遭遇したとき,それはその事実を報告し再び調査しません.

` --sleep-interval=n'

繰り返しの間の待ち時間の秒数を変更します(デフォルトは1).待っている間, 指定された全てのファイルは大きさが変ったかどうか調査されます.

` --pid=pid'

名前または記述子で続ける場合,全てのfile引数に唯一書き込んでいるプ ロセスID pidを指定できます.そして,プロセスが終了した少し後で, tailも終了します.これは書き込んでいるものとtailプロセスが 同じマシンで働いている場合のみ正確に働きます.例えば,ファイルにビルドの 出力を保存したり,ファイルが大きくなるのを見たりするため,maketailを以下のように呼び出し,ビルドが完了したときtailの処理 は終了します.このオプションが無い場合,tail -fプロセスを自分でキ ルする必要があります.

 
$ make >& makerr & tail --pid=$! -f makerr

使用中でない,または,tailされるファイルに書き込んでいるプロセス に対応しないpidを指定した場合,tailはあらゆるfileが増 加するのを停止する前に終了する,または,実際に書き込んでいるものが終了し た後,しばらくしてから終了します.

` --max-consecutive-size-changes=n'

このオプションは,名前で続けるときのみ意味があります.削除されたり,名前 を変更されたりした後でさえ,速いペースで増加し続けるファイルの記述子で続 けているtailの長さを制御するために使用してください.ファイルに対 し,サイズ変更が連続してn検出した後で,ファイル名が,以前と同じデ バイス/inode番号の対で対応されているかどうか決定するため,ファイルを open/fstatします.デフォルト値は,tail --helpの出力 を参照してください.

` --max-unchanged-stats=n'

名前でファイルをtailしているとき,同じ大きさのままで,繰り返しが 連続して何度もある場合,ファイル名が,以前と同じデバイス/inode番号の対で 対応されているかどうか決定するため,ファイルをopen/fstatし ます.回転(rotate)されているログファイルを続けるとき,前回に回転した行を tailが出力するときと,新しいログファイルで蓄積された行を出力する ときの間は,おそらく数秒になります.デフォルト値はtail --helpの出 力を参照してください.このオプションは,名前で続けているときのみ意味があ ります.

` -n n'
` --lines=n'

最後のn行出力します.

` -q'
` -quiet'
` --silent'

ファイル名のヘッダを出力しません.

` -v'
` --verbose'

常にファイル名のヘッダを出力します.


5.3 split: ファイルを固定サイズの部分に分割

splitは,input(inputが与えられなかったり,`-'の 場合は標準入力)の連続したセクションを含む出力ファイルを生成します.概要 です.

 
split [option] [input [prefix]]

デフォルトで,splitinputの1000行(または,最後のセクション は残り)を,それぞれの出力ファイルに書き込みます.

出力ファイルの名前はprefix (デフォルトは`x')から成り立ち, `aa',`ab'等の文字の集合が続き,それは,出力ファイルをファイル 名の順番でソートして結合したものが,元の入力ファイルを生成するようにする ためです.出力ファイルが676以上必要な場合,splitは`zaa', `zab'等を使用します.)

このプログラムは以下のオプションも受け入れます.共通のオプション,も 参照してください.

` -lines'
` -l lines'
` --lines=lines'

inputlines行を,それぞれの出力ファイルに書き込みます.

` -b bytes'
` --bytes=bytes'

inputの最初のbytesバイトを,それぞれの出力ファイルに書き込み ます.`b'の後置はbytesの512倍,`k'は1024倍,そして `m'は1048576倍です.

` -C bytes'
` --line-bytes=bytes'

bytesバイトを越えないinputの完全な行を,できるだけ多くそれぞ れの出力ファイルに書き込みます.bytesバイトより長い行に対しては, 行のbytesバイトより少ない部分が残るまで,それぞれの出力ファイルに bytesバイト書き込み,それから通常に続けます.bytesは `--bytes'オプションに対するものと同じ書式です.

` --verbose'

それぞれの出力ファイルが開かれる直前に,標準エラーに状態を書き込みます.


5.4 csplit: ファイルを文脈で決定された部分に分割

csplitは,input (inputが`-'の場合は標準入力)の部 分を含む,ゼロ以上の出力ファイルを作成します.概要です.

 
csplit [option]… input pattern

出力ファイルの内容は,後で詳述するpattern引数で決定されます. pattern引数が,入力ファイルに存在しない行を参照する場合,エラーが 発生します(例えば,残っている行が与えられた正規表現に一致しない場合).全 てのpatternが一致した後,あらゆる残りの入力は,1つの最後の出力ファ イルにコピーされます.

デフォルトで,csplitは,それぞれの出力ファイルが作成された後,バ イト数を書き込みます.

pattern引数の形式は以下の通りです.

` n'

n行までの入力を含む出力ファイルを作成しますが,n行は含みませ ん.繰り返し数が続く場合,それぞれの繰り返しに対し,入力ファイルの次の line行を含む出力ファイルも作成します.

` /regexp/[offset]'

regexpに一致するものを含む入力ファイルの次の行まで現在の行(ただし, それは含まれない)を含む出力ファイルを作成します.オプションの offsetは,`+'または`-'に正の整数が続きます.与えられた場 合,一致行までの入力に,offset加えた,または引いた入力まで出力ファ イルに書き出され,その後の行は入力の次の部分になります.

` %regexp%[offset]'

前の形式に似ていますが,出力ファイルを作成しないので,入力ファイルの部分 は効率的に無視されます.

` {repeat-count}'

前のパターンをrepeat-count回追加して繰り返します. repeat-countは正の整数,またはアスタリスクになり,それは入力が使い 果たされるのに必要なだけ繰り返すことを意味します.

出力ファイル名は,前置(デフォルトで`xx')とそれに続く接尾子から成り 立ちます.デフォルトで接尾子は2桁の10進数で,`00'から`99'まで 順番に上昇します.あらゆる場合で,ファイル名の順番でソートされた出力ファ イルを連結すると,元の入力ファイルを生成します.

デフォルトで,csplitがエラーや,ハングアップ,中断,終了,または 終端シグナルを検出した場合,それまでに存在する作成されたあらゆる出力ファ イルを削除します.

プログラムは以下のオプションを受け入れます.共通のオプション,も参照 してください.

` -f prefix'
` --prefix=prefix'

出力ファイルの接尾子として,prefixを使用します.

` -b suffix'
` --suffix=suffix'

出力ファイル名の接尾子としてsuffixを使用します.このオプションが指 定された場合,接尾子の文字列は,正確に1つのprintf(3)形式の変換で の指定を含む必要があり,おそらく,書式指定のフラグ,フィールドの幅,正確 な指定,または,これら全ての修飾語を含みます.フォーマット文字は,2進の 整数の引数を可読なものに変換する必要があります.このため,`d', `i',`u',`o',`x',そして`X'の変換は可能です. 完全なsuffixは,順番にそれぞれの個別な出力ファイルに対し,ファイル 名の接尾子を形成するため,(現在の出力ファイル数とともに) sprintf(3)に与えられます.このオプションを使用した場合, `--digits'オプションは無視されます.

` -n digits'
` --digits=digits'

デフォルトの2の代わりにdigits桁の長さの数字を含む出力ファイル名を 使用します.

` -k'
` --keep-files'

エラーが検出された場合でも出力ファイルを削除しません.

` -z'
` --elide-empty-files'

長さゼロの出力ファイルの生成を抑制します.(入力ファイルの,部分の区切り がそれぞれの部分の区切りの最初の行に印を付ける場合,このオプションを使用 しなければ,最初の出力ファイルは一般に,長さゼロのファイルになります.) 出力ファイルの順番は,このオプションが指定されているときでさえ,0から開 始し,常に連続して実行します.

` -s'
` -q'
` --silent'
` --quiet'

出力ファイルの大きさを出力しません.


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

This document was generated by Akihiro Sagawa on June, 15 2005 using texi2html 1.70.