0

我正在尝试结合 gnuplot 制作一个 bash 脚本。我正在使用一个输入文件“input.list”,其中包含要使用 gnuplot 分析的文件的单列列表。我正在使用以下 bash 脚本:

    #!/bin/bash
        while read -r line
        do
...
#Other operations on files
...
        gnupinp=$line
        gnuplot -e  "input='${gnupinp}'; plot input u 1:2; pause -1"

        done < input.list

可能有两个问题相关:

  1. 当分析列表中的第一个文件时,会创建绘图,但在正常工作pause -1时似乎被忽略了pause 1

  2. 无论我使用pause -1还是脚本从执行列表中的第二个文件时pause 1的部分开始失败。当我在 gnuplot 中#Other operations on files使用命令时,可以获得相同的行为。system 'sleep 1'当我忽略pause命令时,将为所有列出的文件正确执行 gnuplot 脚本。

提前感谢您的帮助

4

1 回答 1

0

您以两种相互竞争的方式使用标准输入:将数据输入read到 gnuplot 和 gnuplot 中pause -1

如果您希望用户能够通过在绘制图形后按回车键与 gnuplot 进行交互,您必须使用 stderr 以外的其他方式来为您的脚本提供数据,例如从文件中读取。

于 2016-05-21T13:39:51.290 回答