focal (1) time.1.gz

Provided by: manpages-ja_0.5.0.0.20180315+dfsg-1_all bug

名前

       time - コマンドの時間計測やリソース使用量を表示する

書式

       time [options] command [arguments...]

説明

       time コマンドは、指定されたプログラム command を渡された引き数で実行する。 command が終了すると、 time は
       このプログラムの実行時間の統計情報についてのメッセージを 標準エラー出力に出力する。  表示される統計情報は
       以下の三つから構成される:  (i)  起動から終了までに経過した実時間  (real  time)、  (ii)  ユーザー CPU 時間
       (times(2)  が返す struct tmstms_utimetms_cutime の値の合計)、 (iii) システム CPU  時間  (times(2)
       が返す struct tmstms_stimetms_cstime の値の合計)。

       (bash(1)  などの) いくつかのシェルには、ここで説明するコマンドよりも 機能が少ない、組み込みの time コマン
       ドが存在する。 組み込みではない実際のコマンドを使用するためには、 (/usr/bin/time のような) コマンドのパス
       名を指定する必要があるかもしれない。

オプション

       -p     POSIX ロケールの場合、伝統的なフォーマットである

                  "real %f\nuser %f\nsys %f\n"

              が使用される (各数字は秒単位)。 %f の出力での小数点以下の桁数は規定されていないが、 クロックティッ
              ク (clock tick) の精度を表すのに十分な桁数となり、 少なくとも一桁は存在する。

終了ステータス

       command が起動された場合は、 command の終了ステータスが終了ステータスとなる。 command  が見つからなかった
       場合は終了ステータスは  127 で、 command が見つかったが起動できなかった場合は 126 となる。 これ以外で何か
       エラーがあった場合は、終了ステータスは 0 以外の前記以外の値 (1-125) の何かになる。

環境変数

       環境変数 LANG, LC_ALL, LC_CTYPE, LC_MESSAGES, LC_NUMERIC, NLSPATH, PATH が使用される。 PATHcommand を
       探すのに使われる。それ以外は出力文字や書式に使用される。

GNU バージョン

       以下は  GNU 1.7 バージョンの time の説明である。コマンド名とは裏腹に、GNU バージョンでは 有益な情報がたく
       さん出力される。使用時間だけでなく、 (取得できる場合には) メモリーや I/O、IPC  呼び出しなどの他のリソース
       に関する情報も出力される。  出力はフォーマット文字列を使って整形され、 フォーマット文字列は -f オプション
       か環境変数 TIME で指定できる。

       デフォルトのフォーマット文字列は以下の通り。

           %Uuser %Ssystem %Eelapsed %PCPU (%Xtext+%Ddata %Mmax)k
           %Iinputs+%Ooutputs (%Fmajor+%Rminor)pagefaults %Wswaps

       -p オプションが指定された場合には、

           real %e
           user %U
           sys %S

       という (他と互換性のある) 出力フォーマットが使用される。

   フォーマット文字列
       フォーマットはよくある    printf    形式で解釈される。    通常の文字はそのままコピーされ、     タブ、改行
       (newline)、バックスラッシュはそれぞれ \t, \n, \\ で エスケープされる。 パーセント記号は %% で表現され、そ
       れ以外の % は変換を示す。 末尾には必ず改行文字 (newline) が追加される。 変換は以下の通りである。  tcsh(1)
       で使用される変換は全てサポートされている。

       Time

       %E     経過した実時間 ([hours:]minutes:seconds の形式)。

       %e     (tcsh にはない) 経過した実時間 (秒単位)。

       %S     そのプロセスがカーネルモードで消費した CPU 時間の合計 (秒単位)。

       %U     そのプロセスがユーザーモードで消費した CPU 時間の合計 (秒単位)。

       %P     このジョブが獲得した CPU の割り合い (パーセンテージ)。 (%U + %S) / %E で計算される。

       Memory

       %M     プロセス生存中のそのプロセスの resident set size の最大値。 キロバイト単位。

       %t     (tcsh にはない)  そのプロセスの resident set size の平均値。 キロバイト単位。

       %K     そのプロセスのメモリー使用量の合計 (データ+スタック+テキスト) の平均値。 キロバイト単位。

       %D     そのプロセスの非共有データ領域の平均サイズ。 キロバイト単位。

       %p     (tcsh にはない)  そのプロセスの非共有スタック空間の平均サイズ。 キロバイト単位。

       %X     そのプロセスの共有テキスト空間の平均サイズ。 キロバイト単位。

       %Z     (tcsh にはない) システムのページサイズ (バイト単位)。 この値はシステム毎に決まる定数だが、システム
              により異なる。

       %F     プロセスの動作中に発生したメジャーページフォルトの回数。  これは、ディスクからページを読み込む必要
              があったページフォルトに 関するものである。

       %R     マイナーページフォールト、つまり回復可能なページフォルトの回数。    これは、そのページは有効でない
              が、まだ他の仮想ページに奪われて いなかったページに対するページフォルトに関するものである。

       %W     そのプロセスが主記憶からスワップアウトされた回数。

       %c     そのプロセスが (タイムスライスの経過により) 強制的にコンテキストスイッチ された回数。

       %w     wait の回数、つまりそのプログラムが自発的にコンテキストスイッチされた回数。 例えば、I/O 操作の完了
              を待っている間などが該当する。

       I/O

       %I     そのプロセスによるファイルシステムからの入力の回数。

       %O     そのプロセスによるファイルシステムへの出力の回数。

       %r     そのプロセスが受信したソケットメッセージ数。

       %s     そのプロセスが送信したソケットメッセージ数。

       %k     そのプロセスに配送されたシグナル数。

       %C     (tcsh にはない) time の対象となったコマンド名とコマンドライン引き数。

       %x     (tcsh にはない) コマンドの終了ステータス。

   GNU オプション
       -f FORMAT, --format=FORMAT
              出力フォーマットを指定する。 環境変数 TIME で指定されたフォーマットよりも優先される。

       -p, --portability
              他の time と互換性のある出力フォーマットを使用する。

       -o FILE, --output=FILE
              結果を stderr に送らず、指定されたファイルに書き込む。 ファイルは上書きされる。

       -a, --append
              (-o と一緒に使用する。)  ファイルを上書きせずに、結果をファイル末尾に追加する。

       -v, --verbose
              非常に詳しい出力で、入手できる全ての情報を出力する。

   GNU 標準オプション
       --help 使用方法に関するメッセージを標準出力に表示し、正常終了する。

       -V, --version
              バージョン情報を標準出力に表示し、正常終了する。

       --     オプションリストの末尾を示す。

バグ

       全てのリソースが  UNIX の全てのバージョンで計測されているわけではないので、 いくつかの値が 0 と報告される
       可能性がある。 現在の出力項目のほとんどは 4.2BSD や 4.3BSD で取得可能なデータに 基づいて選択されている。

       GNU time バージョン 1.7 はまだローカライズされていない。  そのため、POSIX  の要件を実装していないことにな
       る。

       TIME  という環境変数は名前の選択がまずい。 autoconf(1)  や make(1) のようなシステムでは、使用するコマンド
       を上書きするのにそのコマンドの 名前の環境変数を使うのが珍しくない。 MORE や TIME のような名前を (プログラ
       ムのパス名の指定ではなく)   プログラムへのオプションを指定するのに使うと、 面倒なことを引き起こす可能性が
       高い。

       -o が追記ではなく上書きになっているのは残念なことだ (つまり -a オプションがデフォルトになっているべきだろ
       うということだ)。

       GNU time に対する提案やバグレポートは
       bug-utils@prep.ai.mit.edu
       までメールを送ってほしい。  その場合には time や OS、使用している C コンパイラの バージョンを記載してほし
       い。 time のバージョンは
       time --version
       で取得できる。

関連項目

       tcsh(1), times(2), wait3(2)

この文書について

       この man ページは Linux man-pages プロジェクトのリリース 3.79 の一部 である。プロジェクトの説明とバグ報告
       に関する情報は http://www.kernel.org/doc/man-pages/ に書かれている。

                                                   2008-11-14                                            TIME(1)