自动执行程序内的命令

时间:2012-01-02 02:49:17

标签: shell

我有一个程序dnapars 我从命令行执行程序如下: ./dnapars 程序然后提示我一些消息作为用户菜单,我必须按照R U Y R的顺序选择一系列选项。然后我将输出文件(outfile)复制到另一个结果文件中。 我编写了以下脚本,但执行挂起的地方应该执行R选项

for i in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
do
cp ../../../EditDistanceRandomParsimonator/RAxML_parsimonyTree.test4D20RI$i.0 intree
./dnapars
R      <----- This doesn't execute
U
Y
R
cp outfile result$i
done

如何让脚本在dnapars程序下运行R U Y R选项?

1 个答案:

答案 0 :(得分:1)

您可以使用shell here document,例如:

./dnapars <<EndOfOptions
R
U
Y
R
EndOfOptions

如果程序从stdin中读取其选项,这通常会起作用。