我试图在 gnuplot 中获取文件的第一个元素:
data = "file.dat"
x = `cat data | head -n 2 | tail -n 1 | awk '{print $1}'`
但这一直给我以下错误:
no such file or directory
我应该写一些像 x =cat $data | head -n 2 | tail -n 1 | awk '{print $1}'
(与美元)
显然,这也是不正确的。
有任何想法吗?
你需要使用一个
set macro
然后使用符号@
获取变量的值data
(@
在 Gnuplot 中就像$
在 bash 中一样)
所以这应该有效
x = `cat @data | head -n 2 | tail -n 1 | awk '{print $1}'`
另一个替代 backtics 的可能性是使用该system
功能。然后您可以构建任何字符串并将其作为 shell 表达式运行:
data = 'file.dat'
x = system("head -n 2 ".data." | tail -n 1 | awk '{print $1}'")