24小时热门版块排行榜    

CyRhmU.jpeg
南方科技大学公共卫生及应急管理学院2025级博士研究生招生报考通知
查看: 758  |  回复: 3
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

aioroslove

金虫 (小有名气)

[求助] linux shell循环的问题已有2人参与

请问大家,在shell sh里的程序如下:
#!/bin/bash
for R in "H2orbit.gjf"
do
R=1
while (( R<=10 ))
do
g09 < H2orbit.gjf > ${R}.out&
R=$(($R+1))
done
done



H2orbit.gjf就是画轨道的,但是在gjf文件里必须给定R的值,这样一来while循环没起到作用了 每次g09的都是原来的文件,请问要如何修改才能在不同的R值处生成轨道信息???


有高手愿意回答一下吗 谢谢
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

aioroslove

金虫 (小有名气)

引用回帖:
2楼: Originally posted by jerkwin at 2014-03-26 22:55:38
你要把gif里面的R替换成需要的值啊
用sed就可以了

是的 用sed可以解决
4楼2014-03-27 09:02:59
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 4 个回答

jerkwin

专家顾问 (正式写手)

【答案】应助回帖

★ ★
感谢参与,应助指数 +1
gkf高: 金币+2 2014-03-27 09:28:37
你要把gif里面的R替换成需要的值啊
用sed就可以了
2楼2014-03-26 22:55:38
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ChemiAndy

木虫 (正式写手)


【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
aioroslove: 金币+10, 有帮助, 谢谢 不过我已经用sed解决了 2014-03-27 09:03:35
gkf高: 金币+2 2014-03-27 09:28:49
Try this...
CODE:
#!/bin/bash

for (( R=1; R<=10; R++))
do

cat > run_$R.gjf << EOF
%chk=run_$R.chk
# B3LYP/aug-cc-pvdz

Just for example ...

0 1
H
H 1 $R

EOF

g09 run_$R.gjf run_$R.out

done

上面只是举例,实际运行会出错,因为bond Length变量必须为实数而非整数。
3楼2014-03-27 01:46:52
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见