AIX 서버의 서버 가동 시간을 몇 초 안에 얻는 방법

AIX 서버의 서버 가동 시간을 몇 초 안에 얻는 방법

Linux에서는 아래 명령을 사용하여 서버 가동 시간 결과를 초(값) 단위로 얻을 수 있습니다.

cat /proc/uptime

그러나 AIX uptime에는 /proc. 을 입력하면 uptime일, 시간, 분 단위로 결과를 얻을 수 있지만 86400초, 30초 또는 임의의 값과 같이 초 단위로만 출력을 얻고 싶습니다.

이 출력을 사용하여 SCOM 모니터링 도구에서 1800초 미만인 경우 경고를 생성하도록 경고를 설정하고 싶습니다.

SCOM에서 셸 명령을 실행할 수 있습니다.

답변1

당신은 적응할 수 있습니다다른 OS에서 프로세스 가동 시간을 얻는 방법은 무엇입니까?프로세스 1(init)의 경과 시간(초)을 매우 가까운 근사치로 반환하려면 다음을 수행하세요.

#!/bin/sh
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#*:}))
printf '%d\n' "$s"

답변2

아래의 라이너를 사용해주세요..

가동시간= uptime | awk -F ',' ' {print $1" "$2}'|awk ' {print $3" "$4" "$5}' | sed '1,$s/:/ /' | awk ' {if ($4 =="users") print $1*60 + $2;else if ($4 =="user") print $1*60 + $2;else if ($2=="mins") print $1;else print $1*24*60 + $3*60 + $4}';if [ $uptime -lt 300 ]; 그런 다음 echo "300분 전에 재부팅되었습니다."; 그렇지 않으면 "확인"을 에코합니다. fi

관련 정보