从tcsh转换为bash问题

时间:2012-04-26 12:40:46

标签: bash gnuplot tcsh

我正在尝试将tcsh脚本翻译为bash脚本。这个脚本以这种方式调用gnuplot:

#!/bin/tcsh
<script commands>
gnuplot << EOF
set terminal png
<other commands>
plot <args>

我试图将'tcsh'修改为'bash',但我得到“here-document at line x by end of of file(想要'EOF')”。这是为什么?

1 个答案:

答案 0 :(得分:3)

正如错误消息所示:您需要使用在开始时给出的字符串结束here文档,在本例中为EOF。您不能只使用文件末尾来终止此文档。

举个例子,这是一个脚本片段,我在这里使用了doc:

/usr/bin/gnuplot << GPLOT
set terminal png
set output "$3"
set logscale xy
set xlabel "$1"
set ylabel "$2"
plot "tmp2.$$" notitle
GPLOT

自从我使用GPLOT开始使用此文档时,bash会查找GPLOT以指示此处doc的结尾。