awk 또는 sed에서 vmstat 출력을 효율적으로 구문 분석하려고하는데 Linux 및 HP-UX에서 모두 작동해야합니다. 예를 들어, I는 다음과 같은 출력에서 (이 경우에는 "92"), CPU에게 유휴 % 잘라 싶습니다효율적인 방법으로 vmstat 출력을 구문 분석합니다.
가$ vmstat
procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu----
r b swpd free buff cache si so bi bo in cs us sy id wa
11 0 385372 101696 61704 650716 0 1 5 9 6 12 5 2 92 0
불행히도 vmstat를 출력 리눅스 분포 및 HP-UX 다른 다를 수 있으며, 또한 열이 변할 수 길이이며 다른 순서로 제시 될 수 있습니다.
나는 멋진 AWK의 oneliner를 작성했지만, 결국 파이썬 솔루션을 종료 :$ vmstat | python -c 'import sys; print dict(zip(*map(str.split, sys.stdin)[-2:])).get("id")'
92
당신은 더 좋은 방법 원하는 열 이름의 숫자 값을 얻기 위해 언급 출력을 구문 분석을 아십니까? 당신이 할 수있는
파이썬 oneliners는 perl :-)과 비슷한 수준의 매력이 없습니다. –