高通量计算中对于批量产生POTCAR文件的脚本书写与关键问题解释
#!/bin/bash
#program:
# This program is used to creat POTCAR
#History
#2023/05/20 Wyeth He 01
# PATH=not understand too mucah
for ((i=1; i<=4; i=i+1))
do
for ((j=2; j<=9; j=j+1))
do
#inside of the loop
cd ${i}0${j}
#cate POTCAR
cat POSCAR | sed -n '6p' | xargs -I {} qvasp -pbe {}
cd ..
done
for ((j=0; j<=5; j=j+1))
do
#inside of the loop
cd ${i}1${j}
cat POSCAR | sed -n '6p' | xargs -I {} qvasp -pbe {}
cd ..
done
done
${i}是循环内部的参数传递
本脚本的难点主要在于下面这句
cat POSCAR | sed -n '6p' | xargs -I {} qvasp -pbe {}
其中“xargs -I {}”是一个参数传递的命令