AIXで起動した後の時間(秒)

AIXで起動した後の時間(秒)

kshを使用して、最後の再起動以降の秒数を取得する必要があります。

これを達成するためのコマンドや機能は何ですか?

答え1

/procディレクトリでPID 1を持つプロセスのpsinfoを確認すると、次のような構造が得られます。

struct   pr_timestruc64_t pr_start; /* process start time, time since epoch */

ここにいるWebページこれを参考にしてください。

答え2

Ubuntu、Redhat、Suseの場合、このファイルを使用できます。しかし、AIXについてはよくわかりません。

出力を表示します。

cat /proc/uptime

AIXで使用できない場合は、次のコマンドを実行してみてください。uptime

答え3

この回答はGilesの回答から露骨にコピーされました。さまざまなオペレーティングシステムでプロセスの稼働時間を取得する方法は?:

t=$(LC_ALL=POSIX ps -o etime= -p 1)
d=0 h=0
case $t in *-*) d=$((0 + ${t%%-*})); t=${t#*-};; esac
case $t in *:*:*) h=$((0 + ${t%%:*})); t=${t#*:};; esac
s=$((10#$d*86400 + 10#$h*3600 + 10#${t%%:*}*60 + 10#${t#*:}))

これにより、稼働時間を秒単位で取得できます$s

仮定されたinit開始時間は「稼働時間」計算を開始する時間であり、初期化はPID 1です(制限されたテストではそうでした)。

関連情報