sar csv output plot chart с использованием gnuplot?

У меня есть сценарий bash для регистрации вывода sar для загрузки процессора и использования памяти, и он выводит зарегистрированную статистику в формате csv. Но как мне создать диаграмму gnuplot из вывода csv и сделать это исключительно из командной строки без интерактивных команд / ввода?

По сути, я хочу расширить свой сценарий bash для регистрации вывода sar, вывода в csv и создания диаграмм gnuplot, запустив сценарий bash.

Электрический ток

sar cpu load csv output

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

sar 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

Любые советы высоко ценится :)


person p4guru    schedule 22.09.2012    source источник


Ответы (1)


Один из способов (возможно, самый простой) сделать это - использовать следующий синтаксис:

#!/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.

person andyras    schedule 22.09.2012