web-dev-qa-db-ja.com

プロセスの実行が停止したことを確認する方法は?

入力したコマンドの実行がいつ停止したかを把握しようとしています

Sudo apt-get update

次のような情報が必要です:

started execution at : 12:00
finished execution at : 12:15
2
Tat Mush

プロセスについて理解しておくべき重要な点は、デフォルトではメタデータが記録されないことです。ただし、プロセスの実行中に特定の情報を取得できます。

関連する StackOverflow question in wlk's answer で述べたように、-oフラグを介してpsおよびltimeに開始時間を取得できます。フォーマット指定子:

ps -eo pid,lstart,cmd

ただし、通常、停止時間はシステムによって追跡されないため、自分で追跡する必要があります。プロセスのPIDを知っていれば、そのPIDの存在をポーリングし、タイムスタンプが消えたときにエコーすることができます

while kill -s 0 $pid ; do : ; sleep 0.25 ; done && date

参照: https://stackoverflow.com/a/5207048/3701431

1

独自のbashスクリプトを作成してみませんか?

#!/bin/bash

start_time=$(date +"%T")

$*                    

finish_time=$(date +"%T")

echo "started execution at : $start_time"
echo "finished execution at : $finish_time"

スクリプトをlogscript.shとして保存します

chmod +x logscript.shを使用して実行可能にします

./logscript.sh commandを使用して「コマンド」を実行できます

たとえば、./logscript.sh Sudo apt-get update

Screenshot of the result

これを確認してください site 興味深い時間表示形式について。

1
NPsoft