这有效:
name="test.txt"
yap -q << % > $name
[experiment_yap],
exp1_min(brother,2).
%
这不是:
for i in 01 02 03 04 05
do
name="test.txt"
yap -q << % > $name
[experiment_yap],
exp1_min(brother,2).
%
done
我收到第19行:语法错误:意外的文件结尾
答案 0 :(得分:9)
它没有处于一个重要的循环中。 bash
并不真正了解或关心缩进 - 要识别heredoc的结尾,终止字符串必须位于行的开头,这会使您的循环看起来像:
for i in 01 02 03 04 05
do
name="test.txt"
yap -q << % > $name
[experiment_yap],
exp1_min(brother,2).
%
done