名 前
time − コ マ ン ド の 時 間 計 測 や リ ソ ー ス 使 用 量 を 表 示 す る
書 式
time [options] command [arguments...]
説 明
time コ マ ン ド は 、 指 定 さ れ た プ ロ グ ラ ム command を 渡 さ れ た 引 き 数 で 実 行 す る 。 command が 終 了 す る と 、 time は こ の プ ロ グ ラ ム の 実 行 時 間 の 統 計 情 報 に つ い て の メ ッ セ ー ジ を 標 準 エ ラ ー 出 力 に 出 力 す る 。 表 示 さ れ る 統 計 情 報 は 以 下 の 三 つ か ら 構 成 さ れ る : (i) 起 動 か ら 終 了 ま で に 経 過 し た 実 時 間 (real time)、 (ii) ユ ー ザ ー CPU 時 間 (times(2) が 返 す struct tms の tms_utime と tms_cutime の 値 の 合 計 )、 (iii) シ ス テ ム CPU 時 間 (times(2) が 返 す struct tms の tms_stime と tms_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 が 使 用 さ れ る 。 PATH は command を 探 す の に 使 わ れ る 。 そ れ 以 外 は 出 力 文 字 や 書 式 に 使 用 さ れ る 。
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 の 平 均 値 。 キ ロ バ イ ト 単 位 。
そ の プ
ロ セ ス の メ モ
リ ー 使 用 量 の
合 計 (デ ー タ +ス
タ ッ ク +テ キ ス
ト ) の 平 均 値 。
キ ロ バ イ ト 単
位 。 そ の プ ロ セ ス の 非 共 有 デ ー タ 領 域 の 平 均 サ イ ズ 。 キ ロ バ イ ト 単 位 。
そ の プ ロ セ ス の 共 有 テ キ ス ト 空 間 の 平 均 サ イ ズ 。 キ ロ バ イ ト 単 位 。
プ ロ セ ス の 動 作 中 に 発 生 し た メ ジ ャ ー ペ ー ジ フ ォ ル ト の 回 数 。 こ れ は 、 デ ィ ス ク か ら ペ ー ジ を 読 み 込 む 必 要 が あ っ た ペ ー ジ フ ォ ル ト に 関 す る も の で あ る 。
(タ イ ム ス ラ イ ス の 経 過 に よ り ) 強 制 的 に コ ン テ キ ス ト ス イ ッ チ さ れ た 回 数 。
I/O
(tcsh に は な い ) time の 対 象 と な っ た コ マ ン ド 名 と コ マ ン ド ラ イ ン 引 き 数 。
GNU オ
プ シ ョ ン (−o と 一 緒 に 使 用 す る 。 ) フ ァ イ ル を 上 書 き せ ず に 、 結 果 を フ ァ イ ル 末 尾 に 追 加 す る 。 −v, −−verbose 非 常 に 詳 し い 出 力 で 、 入 手 で き る 全 て の 情 報 を 出 力 す る 。 GNU 標 準 オ プ シ ョ ン
−V, −−version バ ー ジ ョ ン 情 報 を 標 準 出 力 に 表 示 し 、 正 常 終 了 す る 。
バ グ全 て の リ ソ ー ス が UNIX の 全 て の バ ー ジ ョ ン で 計 測 さ れ て い る わ け で は な い の で 、 い く つ か の 値 が 0 と 報 告 さ れ る 可 能 性 が あ る 。 現 在 の 出 力 項 目 の ほ と ん ど は 4.2BSD や 4.3BSD で 取 得 可 能 な デ ー タ に 基 づ い て 選 択 さ れ て い る 。 GNU time バ ー ジ ョ ン 1.7 は ま だ ロ ー カ ラ イ ズ さ れ て い な い 。 そ の た め 、 POSIX の 要 件 を 実 装 し て い な い こ と に な る 。 TIME と い う 環 境 変 数 は 名 前 の 選 択 が ま ず い 。 autoconf(1) や make(1) の よ う な シ ス テ ム で は 、 使 用 す る コ マ ン ド を 上 書 き す る の に そ の コ マ ン ド の 名 前 の 環 境 変 数 を 使 う の が 珍 し く な い 。 MORE や TIME の よ う な 名 前 を (プ ロ グ ラ ム の パ ス 名 の 指 定 で は な く ) プ ロ グ ラ ム へ の オ プ シ ョ ン を 指 定 す る の に 使 う と 、 面 倒 な こ と を 引 き 起 こ す 可 能 性 が 高 い 。 −o が 追 記 で は な く 上 書 き に な っ て い る の は 残 念 な こ と だ (つ ま り −a オ プ シ ョ ン が デ フ ォ ル ト に な っ て い る べ き だ ろ う と い う こ と だ )。 GNU time
に 対 す る 提 案
や バ グ レ ポ ー
ト は 関 連 項 目こ の 文 書 に つ い てこ の man ペ ー ジ は Linux man−pages プ ロ ジ ェ ク ト の リ リ ー ス 3.79 の 一 部 で あ る 。 プ ロ ジ ェ ク ト の 説 明 と バ グ 報 告 に 関 す る 情 報 は http://www.kernel.org/doc/man−pages/ に 書 か れ て い る 。 |