2012-09-22 2 views
0

나는 cpu로드 및 메모리 사용을 위해 sar 출력을 기록하는 bash 스크립트를 가지고 있으며 csv 형식으로 기록 된 통계를 출력합니다. 하지만 어떻게하면 csv 출력에서 ​​gnuplot 차트를 만들 수 있으며 대화식 명령/입력없이 명령 줄에서만 그렇게 할 수 있습니까?gnuplot을 사용하는 sar csv 출력 플롯 차트?

기본적으로 sar 출력을 로그하고 csv로 출력하고 bash 스크립트를 실행하여 gnuplot 차트를 작성하도록 bash 스크립트를 확장하려고합니다.

현재

특별 행정구의 CPU 부하 CSV 출력

Time,runq-sz,plist-sz,ldavg-1,ldavg-5,ldavg-15 
02:04:36AM,0,171,0.00,0.00,0.00 
02:04:37AM,0,171,0.00,0.00,0.00 
02:04:38AM,0,171,0.00,0.00,0.00 

특별 행정구의 (MEM)의 CSV 출력

Time,kbmemfree,kbmemused,%memused,kbbuffers,kbcached,kbcommit,%commit 
02:11:38AM,1501736,811188,35.07,38852,101808,2628024,49.03 
02:11:39AM,1501488,811436,35.08,38852,101808,2628024,49.03 
02:11:40AM,1501364,811560,35.09,38852,101808,2628024,49.03 

어떤 조언을 크게 :) 감사 아마도

답변

2

한 가지 방법 (가장 쉬운한다)이 구문을 사용하는 것입니다 :

#!/bin/bash 
outputname="output" 
gnuplot << eor 
set terminal png 
set output '$outputname.png' 
set datafile separator "," 
plot 'datafile' u 1:2, '' u 1:3 ... 
<other gnuplot commands here> 
eor 

앞에서 보았 듯이 bash 변수 이름은 gnuplot 명령 줄에서 이스케이프 처리 할 수 ​​있습니다.