我试图与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
可能存在两个问题:
当分析列表中的第一个文件时,会创建绘图,但pause -1
似乎被忽略,而pause 1
工作正常。
无论我使用pause -1
还是pause 1
,当执行列表中的第二个文件时,脚本都会从#Other operations on files
部分开始失败。
当我在gnuplot中使用system 'sleep 1'
命令时,可以获得相同的行为。
当我忽略pause
命令时,gnuplot脚本会针对所有列出的文件正确执行。
提前感谢任何帮助
答案 0 :(得分:0)
您正在以两种竞争方式使用标准输入:将数据提供给Email
和gnuplot的read
。
如果您希望用户能够在绘制图表后按回车键与gnuplot进行交互,则必须使用除stderr之外的其他方式来为脚本提供数据,例如:从文件中读取。