rrdtool打印(不是图表)在同一行?

时间:2014-05-15 18:51:15

标签: rrdtool rrd

有没有办法打印:1行上的所有内容?

使用:

PRINT:e:LAST:"Current\:%8.2lf" \
PRINT:e:AVERAGE:"Avg\:%8.2lf" \
PRINT:e:MAX:"Max\:%8.2lf \n" \

我的输出看起来像:

Current:   32.56
Avg:   44.41
Max:  131.90 \n
Current:   28.15
Avg:   65.33
Max:  389.69 \n
Current:   11.98
Avg:   16.45
Max:   59.42 \n
....

我想让它看起来像这样:

Current:   32.56    Avg:   44.41    Max:  131.90 \n
Current:   28.15    Avg:   65.33    Max:  389.69 \n

最后,这将允许我格式化txt以导入到excel。

这可能吗?

1 个答案:

答案 0 :(得分:1)

不,你不能这样做,因为PRINT指令不能这样工作。

虽然GPRINT指令允许您使用\ l,\ r,\ c来启动新行并指定对齐选项,但PRINT语句定义了一个字符串。每个字符串(IE,每个PRINT指令)构成输出数组中的一个新项目,每行打印一个项目。

如果从API调用RRDTool,则会将PRINT输出数组作为数组指针。这在编程方面更有帮助,但如果你想像你的情况那样进行格式化,则需要一些后期处理。

rrdtool graph $OPTIONS | tr '\n' ' ' | sed 's/\\n/\n/g'