command-line - 如何将命令行参数传递给 gnuplot?

标签 command-line gnuplot

我想使用 gnuplot 从数据文件中绘制图形,比如 foo.data。目前,我在命令文件中硬编码了数据文件名,比如 foo.plt,然后运行命令 gnuplot foo.plg 来绘制数据。但是,我想将数据文件名作为命令参数传递,例如运行命令 gnuplot foo.plg foo.data。如何解析 gnuplot 脚本文件中的命令行参数?谢谢。

最佳答案

可以通过开关-e输入变量

$ gnuplot -e "filename='foo.data'" foo.plg

在 foo.plg 中你可以使用那个变量

$ cat foo.plg 
plot filename
pause -1

要使“foo.plg”更通用一些,请使用条件:

if (!exists("filename")) filename='default.dat'
plot filename
pause -1

请注意 -e 必须在文件名之前,否则文件会在 -e 语句之前运行。特别是,使用 ./foo.plg -e ... CLI 参数运行 shebang gnuplot #!/usr/bin/env gnuplot 将忽略使用提供的参数。

关于command-line - 如何将命令行参数传递给 gnuplot?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44639225/

相关文章:

Java非阻塞输入

shell - awk 行可以在终端中工作,但不能在 Gnuplot 图中工作

python - gnuplot.py 图的硬拷贝

header - Gnuplot:每一个行为都很奇怪

bash - 递归运行 `tmutil isexcluded`

c++ - 如何在 C++ 的命令行中创建一个文件名?

linux - 如何使用 linux expect 脚本输入密码提示

java - 使用aapt2手动生成R.JAVA文件

gnuplot - 在 Octave 中显示轴限制之外的线

c++ - CERN 根目录 : Is is possible to plot pairs of x-y data points?