0

CPU負荷とメモリ使用量のsar出力をログに記録するbashスクリプトがあり、ログに記録された統計をcsv形式で出力します。しかし、csv 出力から gnuplot チャートを作成し、インタラクティブなコマンド/入力なしでコマンドラインからのみ作成するにはどうすればよいでしょうか?

基本的に、bash スクリプトを拡張して、sar 出力をログに記録し、csv に出力し、gnuplot チャートをすべて bash スクリプトを実行して作成したいと考えています。

現在

sar 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

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

どんなアドバイスも大歓迎です:)

4

1 に答える 1

2

これを行う 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 コマンド ライン内でエスケープできます。

于 2012-09-22T17:44:45.460 に答える