在gnuplot中处理awk参数

时间:2015-01-09 18:22:38

标签: awk gnuplot

我使用awk和gnuplot中的输出来绘制文件中的数据。这在gnuplot中的工作原理如下:

s=`awk '{N+=$2}; END {print N}' modes/10.dat`

在gnuplot中,我可以使用s。但是我想将参数从gnuplot代码传递给awk,例如:

i=10
file='modes/'.i.'.dat'
s=`awk '{N+=$2}; END {print N}' file`

不幸的是,这不起作用。我也试过了......像:

i=10
file='modes/'.i.'.dat'    
cmd = sprintf("awk '{N+=$2}; END {print N}' %s", file)
s=`cmd`

有人有想法吗?

1 个答案:

答案 0 :(得分:1)

使用

s = system(cmd)

评估gnuplot变量cmd中包含的shell表达式:

i = 10
file = 'modes/'.i.'.dat'    
cmd = sprintf("awk '{N+=$2}; END {print N}' %s", file)
s = system(cmd)