time【コマンド】
コマンドだよ
WindowsとUNIX系で使えるよ
コマンドの実行時間を計測するよ(UNIX系)
コンピュータの時刻を表示・設定するよ(Windows系)
スポンサーリンク
簡単に書くよ
time【コマンド】とは
コンピュータさんに対する命令文(コマンド)のひとつ
であり
コマンドやプログラムの実行時間を計測するときに使うコマンド(UNIX系のOS)
です。
もしくは
コンピュータの時刻を表示・設定するときに使うコマンド(Windows系のOS)
です。
詳しく書くよ
「time」コマンドはUNIX系(LinuxとかMacとか)およびWindows系で使えます。
UNIX系とWindows系でコマンドの内容が違いますけどね。
まずは、UNIX系における「time」コマンドについて説明します。
UNIX系の「time」コマンドは
コマンドやプログラムの実行時間を計測するときに使うコマンド
です。
書き方は
time [オプション] [対象のコマンド・プログラム]
です。
オプションは、ちょびっとだけあります。
| オプション | 説明 |
|---|---|
| -p | 結果の書式が real 【秒数】 user 【秒数】 sys 【秒数】 になる |
です。
それでは、実際の使い方を見てみましょう。
使い方は簡単です。
例えば
time sleep 1
を実行すると「sleep 1」コマンドの実行にかかった時間が表示されます。
ちなみに「sleep」コマンドは「一定時間処理を止めるコマンド」ね。
「-p」オプションを指定すると、出力結果の書式が変わります。
……の前に、大事なことを説明しておきましょう。
実は「time」コマンドは2種類あります。
1.シェルに組み込まれているtimeコマンド
2.単独のtimeコマンド
の2つです。
この2つのうち「-p」オプションが使えるのは「2.単独のtimeコマンド」です。
「1.シェルに組み込まれているtimeコマンド」には「-p」オプションがありません。
私の環境(CentOS 7)を例に説明します。
私の環境で
which time
を実行すると、以下の結果が表示されました。
time: shell built-in command.
「which」コマンドは、指定されたコマンドのパス(置き場所)を表示するコマンドです。
「which」コマンドの実行結果から、私の環境の「time」コマンドは「1.シェルに組み込まれているtimeコマンド」だと分かります。
この状況で
time sleep 1
を実行してみました。
1秒間処理を止めるコマンドの実行にかかった時間を計測する命令です。
このコマンドの実行結果は以下のようになりました。
0.000u 0.000s 0:01.00 0.0% 0+0k 0+0io 0pf+0w
次に「-p」オプションを指定して
time -p sleep 1
を実行してみました。
結果は以下の通りです。
-p: Command not found.
0.000u 0.000s 0:00.00 0.0% 0+0k 0+0io 0pf+0w
おっと、1行目に
-p: Command not found.
と書いてありますね。
どうやら「-p」をオプションではなく、実行したコマンドと認識したようです。
ここまでの結果から「1.シェルに組み込まれているtimeコマンド」に「-p」オプションがないことが分かります。
次に「2.単独のtimeコマンド」を見てみましょう。
事前準備として
yum install time
を実行して、単独の「time」コマンドを用意しました。
ちなみに「yum」は、コンピュータにソフトを追加したり消したりするときに使うコマンドです。
さて、これで準備はできました。
追加した「time」コマンドは
/usr/bin/time
にあることにして話を続けます。
まずは「-p」オプションなしで実行してみましょう。
/usr/bin/time sleep 1
を実行したところ、以下の結果が表示されました。
0.00user 0.00system 0:01.00elapsed 0%CPU (0avgtext+0avgdata 668maxresident)k
0inputs+0outputs (0major+207minor)pagefaults 0swaps
次に「-p」オプションを付けて
/usr/bin/time -p sleep 1
を実行してみます。
結果は以下のようになりました。
real 1.00
user 0.00
sys 0.00
いかがでしょう。
「-p」オプションを付けた方が簡略化されているけど見やすいですよね。
このように結果の書式を変えるのが「-p」オプションの役目です。
UNIX系の「time」コマンドの使い方は、そんな感じです。
繰り返しになりますが、UNIX系の「time」コマンドは
1.シェルに組み込まれているtimeコマンド
2.単独のtimeコマンド
の2種類あります。
一応、頭の片隅にでも置いておいてあげてください。
次にWindows系の「time」コマンドを説明します。
Windows系の「time」コマンドは
コンピュータの時刻を表示・設定するときに使うコマンド
です。
書き方は
time [オプション]
です。
オプションは少しだけあります。
| オプション | 説明 |
|---|---|
| /T | 時刻を表示する(設定はしない) |
です。
それでは、実際の使い方を見てみましょう。
オプション未指定で
time
を実行すると、新しい時刻を入力するように指示が出ます。
私の環境では以下のメッセージが表示されました。
現在の時刻: 14:53:36.91
新しい時刻を入力してください:
新しい時刻を入力してエンターキーを押せば完了です。
「/T」オプションを付けて
time /T
を実行すると、時刻の確認のみできます。
私の環境では以下の結果が表示されました。
14:56
Windows系の「time」コマンドは、そんな感じです。
一言でまとめるよ
まぁ「time」ってコマンドが出てきたら「実行時間を計測する(UNIX系)、もしくは時刻を設定する(Windows系)ときに使うんだな~」と お考えください。






