24小时热门版块排行榜    

查看: 514  |  回复: 1

BBQY

铁虫 (小有名气)

[求助] shell脚本编程 已有1人参与

我有个QB.out文件,文件中有                        
CARTESIAN COORDINATES

   1    H       16.074719860     8.229529334    25.103862190
   2    C       16.465993520     9.232996370    25.301990040
   3    C       17.415993140     9.685996190    24.205990470
   4    N       16.735993410     9.949996080    22.943990970
   5    C       17.340993170    10.058996040    21.764991430
   6    N       16.616993460    10.307995940    20.682991860
   7    N       18.659992650     9.916996100    21.652991480
   8    H       15.602017307     9.906518523    25.370615233
   9    H       16.966838633     9.240617684    26.275695958
  10    H       17.924047738    10.622953044    24.553804455
,其中文件中有2个CARTESIAN COORDINATES,如果我想提取 第二个CARTESIAN COORDINATES这个关键词下面的第3-9行坐标,并保留小数点后4位有效数字到QB.coods文件用shell怎样写脚本呀,shell新手,还望大家多多帮忙呀,不胜感激~
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

czyzsu

专家顾问 (文坛精英)


【答案】应助回帖

#!/bin/bash
for i in *.out
do
NAME=${i%.out}
NATOM=` grep "NAtoms=" $i | tail -1 | awk ' {print $2} ' `
sed ' /Standard orientation: /, /Rotational constants/! d' ${i} | grep -v -E ' I| C| N| D| R| \-\-\-' | tail -$NATOM | awk ' {gsub(17, "Cl", $2) ;
gsub(16,"S",$2); gsub("1", "H", $2); gsub(6, "C", $2); gsub(7, "N", $2); gsub(8, "O", $2); printf "%5s %10.6f %10.6f %10.6f\n",$2,$4,$5,$6}' > ${NAME}.xyz
done
——————————————————————
楼主,将以上保存为out2xyz.sh,chmod +x out2xyz.sh  在当前目录下执行./out2xyz.sh,就可以批处理提取你要的数据。数据有效数字可以通过调整%10.6f这个格式来得到你要的有效数字。
如果没有得到你要的数据,适当调整该语句(NATOM=` grep "NAtoms=" $i | tail -1 | awk ' {print $2} ' `)就好了。
2楼2016-11-15 20:07:43
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 BBQY 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 这样的filecode谁见过 +3 布布和一二 2026-08-08 5/250 2026-08-08 12:22 by 仁砚薪传
[基金申请] 国基金的申报应该改成非等额制,评价高的钱多评价低的钱少,但是增加资助率 +4 a089 2026-08-07 4/200 2026-08-08 12:15 by arzu_hma
[基金申请] 关于代码变化问题,想知道的进来 +10 且听虎啸 2026-08-07 13/650 2026-08-08 12:09 by sakura12139
[找工作] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +3 Vi50GxzrFcSG 2026-08-07 4/200 2026-08-08 10:39 by 3OOjAIS77qg2
[基金申请] fileCode有新解读? +8 Tide man 2026-08-08 16/800 2026-08-08 09:59 by Tide man
[硕博家园] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +3 HEQlVqMTIA7d 2026-08-07 5/250 2026-08-08 08:59 by 6vVgjDL4CnGu
[教师之家] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +3 HEQlVqMTIA7d 2026-08-07 4/200 2026-08-08 08:27 by 6vVgjDL4CnGu
[基金申请] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +3 KXLV3nuBVBY7 2026-08-07 4/200 2026-08-08 08:21 by 6vVgjDL4CnGu
[考博] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +3 HEQlVqMTIA7d 2026-08-07 3/150 2026-08-08 03:47 by 6vVgjDL4CnGu
[基金申请] 基金中了 +14 laoda193707 2026-08-06 14/700 2026-08-08 00:23 by 实验小白ha
[基金申请] 娱乐 +6 Tide man 2026-08-03 6/300 2026-08-07 22:40 by 铁帽子农民
[基金申请] 听说今天filecode变了 +24 布布和一二 2026-08-06 47/2350 2026-08-07 16:02 by zhiyanjiang
[基金申请] filecode与中标关系的预测 +3 布布和一二 2026-08-07 3/150 2026-08-07 15:09 by gltch
[基金申请] filecode变化情况 +6 布布和一二 2026-08-07 22/1100 2026-08-07 14:45 by 且听虎啸
[基金申请] 关于豆爷回答的JTJC与%2F数量 +4 yang182083 2026-08-06 6/300 2026-08-07 12:43 by 虫友是什么虫
[基金申请] filecode +14 等待解的谜 2026-08-06 19/950 2026-08-07 12:20 by wlwhappy
[基金申请] filecode +8 布布和一二 2026-08-06 11/550 2026-08-06 20:41 by tangpu318
[基金申请] 8月时间戳变的,举个手。玩一下,释放压力 +9 archvillain 2026-08-04 11/550 2026-08-05 20:06 by wlwhappy
[基金申请] 有没有H口的?有收到消息的吗? +3 超级海虾 2026-08-04 3/150 2026-08-04 17:26 by 学教育滴
[基金申请] 面上提前没消息,有中的吗 +14 archvillain 2026-08-02 18/900 2026-08-04 14:42 by archvillain
信息提示
请填处理意见