【问题标题】:while loop syntax error unexpected end of file [closed]while循环语法错误文件意外结束[关闭]
【发布时间】:2012-02-22 17:26:55
【问题描述】:

我的while循环有语法错误,我的代码如下

#! /bin/bash
# extracts pdb from mdcrd and fix number and move to one central location

filename="min_8a-"
i=1
num_structures=1000
natoms=97
folders=15



while [[ $i -le $folders ]]; do
 cd ~/new/sa/na-main/a-na-main/second/$i
 mkdir pdbfit

x=1

 while [[ $x -le $num_structures ]]; do

   ptraj ./8a-${a}.prmtop << EOF
   trajin $filename$a.mdcrd $x $x 1
   trajout pdbfit/a-2-$i.pdb pdb dumpq
 EOF
 let x=$x+1
 done

 cd pdbfit 
 mv *.* ~/pdbfit
 cd ..
 rm pdbfit

let i=$i+1
done

我收到第 34 行语法错误,说明“语法错误:文件意外结束”

作为一个未经训练的眼睛,我已经尝试过但未能解决这个问题,所以如果有人可以帮助我解决这个问题,那将是非常棒的。

【问题讨论】:

    标签: bash syntax while-loop syntax-error


    【解决方案1】:

    确保EOF 位于行首。

       ptraj ./8a-${a}.prmtop << EOF
       trajin $filename$a.mdcrd $x $x 1
       trajout pdbfit/a-2-$i.pdb pdb dumpq
    EOF
    ^ no space before the E
    

    【讨论】:

      猜你喜欢
      • 2017-10-07
      • 1970-01-01
      • 2012-03-22
      • 1970-01-01
      • 2016-05-12
      • 1970-01-01
      • 2013-02-03
      • 2012-11-08
      相关资源
      最近更新 更多