필자는 쉘 스크립팅에 비교적 익숙하며 bash를 사용하여 자체 건강 점검 스크립트를 작성하는 중입니다.쉘 스크립트를 사용하여 CPU로드를 테스트하는 더 빠른 방법입니까?
성능, 가독성 및 유지 관리 측면에서 CPU로드를 테스트하는 다음 스크립트가 있습니까?
#!/bin/sh
getloadavg5() {
echo $(cat /proc/loadavg | cut -f2 -d' ')
}
getnumcpus() {
echo $(cat /proc/cpuinfo | grep '^processor' | wc -l)
}
awk \
-v failthold=0.8 \
-v warnthold=0.7 \
-v loadavg=$(getloadavg5) \
-v numcpus=$(getnumcpus) \
'BEGIN {
ratio=loadavg/numcpus
if (ratio >= failthold) exit 2
if (ratio >= warnthold) exit 1
exit 0
}'
Re : 성능, 가독성 및 유지 관리 측면에서 최고입니다. 아니오라고 말합니다. –
좀 더 알려주시겠습니까? –
실제로 무엇을하려고하는지 명확하지 않습니다. 귀하의 질문에 표시된 명령에서 가져온 값은 주어진 순간에 기계가 무엇을하는지 거의 간과하지 않습니다. 두 번째 명령은 단지 정보 용이며 적극적으로 변경되지 않습니다. –