高能物理实验新手入门手册(三)
发布日期:2023-11-16
作者:李丛宇等
编辑:内容维护管理员
来源:
#lctp2021.051301#
李丛宇1 柴新宇1 刘昊1 张景旭1谢世卿2 祁康辉3 王雄飞1
(1 兰州大学物理科学与技术学院 甘肃 兰州 730000
2 兰州大学萃英学院 甘肃 兰州 730000
3 中国科学院近代物理研究所 甘肃 兰州 730000)
第四章 shell 脚本举例
笔者学习 shell 就是为了写一些简单的脚本去完成复杂的事情。简单指的是语句易懂, 虽然 linux 操作细节很多,但笔者也只会上文列举的那些基本操作,但仅仅凭借很少的的 知识,我们就可以把原来机械化的操作都融合到脚本中,经过几次调试,最后就能达到一 键完成工作的目的。
下面的脚本都是笔者自己写出,或者是将他人的操作步骤整合起来。都经过了反复的 调试和测试,基本不会出问题。笔者会把脚本所在路径写出,对于我们 BES 组内成员,可以直接去复制文件。如若不能做到,可以尝试复制代码。如果复制出来为乱码,则可以借助OCR 工具将图片转为文字。当然如果您想以此为参考写出属于自己的脚本,也是很好的。
4.1 删除作业
/afs/ihep.ac.cn/users/l/licy19/others/rm.sh

该脚本用到了键盘读入的命令:read,其实也很简单,就是读取参数,多个参数之间用空 格隔开。-p 后面跟的是提示信息。
4.2 配置环境
/afs/ihep.ac.cn/users/l/licy19/Envir_confifig.sh(updateconfifig.sh)

该脚本看起来复杂,实际上就是把配置环境的步骤整合起来,用户使用时只需要输入自己 的名字(主用户名)即可实现一键配置自己的环境。
4.3 跑作业脚本集
高能物理实验需要进行大量计算,而完成这些计算任务的过程是枯燥而漫长的,笔者 将这一过程写成了几个脚本,感觉确实节省了很多时间。我的梦想就是一键科研,把更多 的时间节省出来做更有意义的工作。路径如下:/afs/ihep.ac.cn/users/l/licy19/lam(xi)
两个过程有一些区别,xi 过程比 lam 过程要多交一些作业,相应的脚本也会复杂一些, 下面以 lam 过程为例。
4.3.1 模拟:1sim.sh

模拟一般不能和重建一起跑,但可以和数据 (Data) 和 Inc_MC 一起跑。
4.3.2 重建:2rec.sh

4.3.3 KKMC 到 Exc_MC:3kkmc.sh

4.3.4 Data 中画图:4data.sh

4.3.5 Exc_MC 中画图:4mc.sh

最后要说一下,笔者为了在能力范围内尽可能提高脚本的自动化水平,对其中所用到 的程序也做了一些改动,它们都放在/afs/ihep.ac.cn/users/l/ licy19/lam/code 下。
参考文献
[1] 鸟哥: 鸟哥的 Linux 私房菜 [M],人民邮电出版社,2010
[2] runoob.com:Linux 教程, https://www.runoob.com/linux/linux-tutorial.html[OL]
[3] 博客园: 单行多行注释,https://www.cnblogs.com/sssblog/p/10143138.html[OL]lctp210513