이 열의 값을 어떻게 추가할 수 있나요? (미국+sy+id+wa)

이 열의 값을 어떻게 추가할 수 있나요? (미국+sy+id+wa)

CPU 사용률을 확인하고 싶습니다. 그래서 us,sy,id,wa 열을 추가하려고 합니다. 이 4개의 열을 추가하는 것이 가능합니까? 어떤 제안이 있으십니까?

procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 0  0  61860 136688      0 714920    0    0     4    14    0    6  1  1 97  0  0
 1  0  61860 136688      0 714920    0    0     0     0  150  145  0  0 100  0  0
 0  0  61860 136696      0 714920    0    0     0     0  108  129  1  0 99  0  1
 0  0  61860 136688      0 714920    0    0     0     0  177  179  0  1 99  0  0
 0  0  61860 136696      0 714920    0    0     0     0  137  155  0  0 100  0  0

expected output:

total utilization
100%
98%
76%

답변1

awk를 사용하여 출력을 처리하고 원하는 합계가 포함된 열을 추가할 수 있습니다.

vmstat | awk 'NR<=2{print}NR>2{printf("%s\t%d\n", $0, $13+$14+$15+$16);}'

"예상 출력"을 추가한 후 다음을 수행할 수 있습니다.

vmstat | awk '{print}NR>2{us+=$13; sy+=$14; id+=$15; wa+=$16}END{printf("Total us:%d sy:%d id:%d wa:%d\n", us, sy, id, wa);}'

관련 정보