Unix ライクなシステムでは、コマンドまたはプロセスの実行がいつ開始されたか、またプロセスがどのくらいの時間実行されているかがわかる場合があります。 しかし、コマンドまたはプロセスがいつ終了したか、または完了するまでにどのくらいの時間がかかったかをどのように知るのでしょうか? Unix 系システムでは、これは非常に簡単です。このために特別に設計された GNU time というプログラムがあります。 time プログラムを使用すると、Linux オペレーティング システムでのコマンドまたはプログラムの合計実行時間を簡単に測定できます。 time コマンドはほとんどの Linux ディストリビューションにプリインストールされているため、インストールする必要はありません。 Linux でコマンドまたはプロセスの実行時間を調べる コマンドまたはプログラムの実行時間を測定するには、次のコマンドを実行します。 または、 サンプル出力: dir1 dir2 file1 file2 mcelog 実数 0分0.007秒 ユーザー 0分0.001秒 システム 0分0.004秒 $ 時間 ls -a . .bash_logout dir1 file2 mcelog .sudo_as_admin_successful .. .bashrc dir2 .gnupg .profile .wget-hsts .bash_history .cache ファイル1 .local .stack 実数 0分0.008秒 ユーザー 0分0.001秒 システム 0分0.005秒 上記のコマンドは、ls コマンドの合計実行時間を表示します。 ls を任意のコマンドまたはプロセスに置き換えて、合計実行時間を調べることができます。 出力の詳細:
コマンドを特定の期間のみ実行するように制限することもできます。詳細については、次のチュートリアルを参照してください。 Linux でコマンドを特定の時間に実行する方法 時間と/usr/bin/time 上記の例では、time と /usr/bin/time という 2 つのコマンドを使用していることにお気づきかもしれません。 それで、その違いは何なのか疑問に思うかもしれません。 まず、type コマンドを使用して、time コマンドが何であるかを確認しましょう。不明な Linux コマンドについては、type コマンドを使用して関連するコマンドに関する情報を検索します。 詳細については、このガイドを参照してください。 $ type -a 時間 時間はシェルのキーワードです 時間は /usr/bin/time です 上記の出力からわかるように、時間には 2 つの意味があります。
シェルのキーワードは実行可能ファイルよりも優先されるため、完全なパスを指定せずに time コマンドを実行すると、シェルの組み込みコマンドが実行されます。 ただし、/usr/bin/time を実行すると、実際の GNU time コマンドが実行されます。 したがって、実際のコマンドを実行するには、完全なパスを指定する必要がある場合があります。 BASH、ZSH、CSH、KSH、TCSH などのほとんどのシェルでは、組み込みキーワード time が使用できます。 time キーワードには実行可能ファイルよりもオプションが少なく、使用できるオプションは -p のみです。 これで、time コマンドを使用して、特定のコマンドまたはプロセスの合計実行時間を調べる方法がわかりました。 GNU 時間ツールについてさらに詳しく知りたいですか? 読み続けてください! GNU time プログラムの簡単な紹介 GNU time プログラムは、指定された引数を使用してコマンドまたはプログラムを実行し、コマンドの完了後にシステム リソースの使用状況を標準出力に要約します。 time キーワードとは異なり、GNU time プログラムは、コマンドまたはプロセスの実行時間だけでなく、メモリ、I/O、IPC 呼び出しなどの他のリソースも表示します。 time コマンドの構文は次のとおりです。 /usr/bin/time [オプション] コマンド [引数...] 上記の構文のオプションは、time コマンドで特定の機能を実行するために使用できる一連のオプションを指します。 利用可能なオプションは次のとおりです。
オプションなしで GNU time コマンドを使用すると、次の出力が表示されます。 $ /usr/bin/time wc /etc/hosts 9 28 273 /etc/ホスト 0.00ユーザー 0.00システム 0:00.00経過 66%CPU (0平均テキスト+0平均データ 2024最大常駐)k 0入力+0出力(0メジャー+73マイナー)ページフォールト0スワップ シェルのキーワード time を使用して同じコマンドを実行すると、出力は少し異なります。 $ 時間 wc /etc/hosts 9 28 273 /etc/ホスト 実数 0分0.006秒 ユーザー 0分0.001秒 システム 0分0.004秒 場合によっては、システム リソースの使用状況をターミナルではなくファイルに出力したいことがあります。 これを行うには、以下に示すように -o オプションを使用します。 $ /usr/bin/time -o ファイル.txt ls dir1 dir2 file1 file2 file.txt mcelog ご覧のとおり、time コマンドはターミナルに何も出力しません。出力をファイル file.txt に書き込んだためです。 このファイルの内容を見てみましょう: $ cat ファイル.txt 0.00ユーザー 0.00システム 0:00.00経過 66%CPU (0平均テキスト+0平均データ 2512最大常駐)k 0入力+0出力(0メジャー+106マイナー)ページフォールト0スワップ -o オプションを使用すると、file.txt というファイルがない場合には、ファイルが作成され、そこに出力が書き込まれます。ファイルが存在する場合は、元の内容が上書きされます。 -a オプションを使用すると、ファイルの内容を上書きするのではなく、出力をファイルに追加することができます。 -f オプションを使用すると、ユーザーは好みに応じて出力形式を制御できます。 たとえば、次のコマンドの出力には、ユーザー、システム、合計時間のみが表示されます。 $ /usr/bin/time -f "\t%E 実数、\t%U ユーザー、\t%S システム" ls dir1 dir2 file1 file2 mcelog 0:00.00 実数、0.00 ユーザー、0.00 システム シェルに組み込まれている time コマンドには、GNU time プログラムのすべての機能が備わっているわけではないことに注意してください。 GNU time プログラムの詳細な説明は、man コマンドを使用して表示できます。 Bash 組み込みの time キーワードの詳細については、次を実行します。 要約する 上記は、Linux でコマンドまたはプロセスの実行時間を調べる方法について紹介したものです。お役に立てれば幸いです。ご質問がある場合は、メッセージを残してください。すぐに返信いたします。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。 以下もご興味があるかもしれません:
|
<<: Vue3 のレンダリング関数における互換性のない変更の詳細な説明
>>: MySQL サービス 1067 エラーの解決策: mysql 実行可能ファイルのパスを変更する
目次1. 必須属性1. 名前2. バージョン2. 説明情報1. 説明2. キーワード3. 著者4. ...
この記事では、VueでEchartsをインポートして線散布図を実現する具体的なコードを参考までに共有...
停止したすべてのDockerコンテナを1つのコマンドで再起動するdocker ps -a | gre...
1. コマンドの紹介watch コマンドは、指定されたコマンドを定期的に実行し、実行結果を全画面に表...
Vue に限定されず、他の種類の SPA プロジェクトにも当てはまる問題がいくつかあります。 1....
擬似配列と配列JavaScript では、5 つのプリミティブ データ型を除き、関数を含め、その他す...
ウェブデザイナーはジェネラリストであると言わざるを得ません。グラフィックデザイナーは、さまざまな特殊...
序文一般的なビジネス シナリオでは、検索ボックスへの入力が完了した後、検索データを取得するために関連...
絶対位置決め方式: (1)親要素を相対配置に設定します。親要素の高さを指定しない場合は、左の子要素の...
これまでの数年間、私はいわゆる「設計仕様」についてかなりの数の執筆やコンサルティングを行ってきました...
一般的に、テーブルを使用する場合は、常に <table border="1"...
例示するシステムを自分でインストールする場合は、通常、システム言語をカスタマイズできます。ただし、ク...
最近、セキュリティ製品をテストする必要があったため、mariadb の起動ユーザーを root に調...
達成される効果は次のとおりです。 マウスがボタン内に移動すると、ネオンライトのような効果が生成され、...
皆さんはこのような状況に遭遇したことがあるでしょうか。プロジェクトや研究開発を行う際に、緊急にファイ...