2014-02-27 3 views
0

두 개의 열 값의 합계를 얻고 싶습니다. 각 결과를 따로 원해. 내가리눅스에서 두 개 이상의 열 합계를 인쇄하십시오.

32.00 4824.00 

여기

명령

0.00 1608.00 
22.00 0.00 
10.00 1608.00 
0.00 1312.00 
0.00 0.00 
0.00 0.00 
0.00 296.00 

나는이 결과를 원하는

iostat -x 1 2 \ 
| perl -e 'local $/=""; @p=<STDIN>; print @p[4];' \ 
| awk '{ print $6 " " $7}' \ 
| grep -v rsec 

출력 : 여기 제 값입니다 내가 무엇을 시도 :

iostat -x 1 2 \ 
| perl -e 'local $/=""; @p=<STDIN>; print @p[4];' \ 
| awk '{ print $6 " " $7}' \ 
| grep -v rsec \ 
| awk '{ SUM += $1 SUM2 += $2} END { print SUM " " SUM2}' 

이 명령은 구문 오류를 제공합니다. 이것에 대한 해결책은 무엇입니까?

+5

'SUM + = $ 1'과'SUM2 + = $ 2' 사이에'; '를 추가하면 ---> {SUM + = $ 1; SUM2 + = $ 2}'. – fedorqui

+0

그게 내 문제를 해결해 줘서 고마워. – AloneInTheDark

답변

4

설명서 페이지에 따르면 awk의 명령은 개행, 세미콜론 또는 둘 모두로 구분할 수 있습니다. 당신의 두 명령은 그러한 것들로 분리되지 않습니다. 해결 방법은 다음과 같이 작성하는 것입니다 :

| awk '{ SUM += $1; SUM2 += $2} END { print SUM " " SUM2}' 
관련 문제