我使用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`
有人有想法吗?
答案 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)