如何在bash文件中使用cat和EOF

问题描述

我有一个bash文件,我想在bash文件中使用下面的文本来生成文件run.sh。

所以我尝试过的是

cat > run.sh << EOF
case="NONE"
for i in 300.0000 500.0000
do
 awk '$3<0.0{print $0}' $NONE.eff |  grep $i  |  awk '{print $3*(-1),$7/(4.485E-32)}' > eff"$i"_E.dat
 awk '$3>0.0{print $0}' $NONE.eff |  grep $i  |  awk '{print $3,$7/(4.485E-32)}' > eff"$i"_H.dat
done
EOF

使用上述cat和EOF命令,我得到一个文件run.sh,但是run.sh文件中缺少变量(所有带有$符号的值)。 我得到的是

case="NONE"
for i in 300.0000 500.0000
do
 awk '<0.0{print ELF.sh}' .eff |  grep   |  awk '{print *(-1),/(4.485E-32)}' > eff""_E.dat
 awk '>0.0{print ELF.sh}' .eff |  grep   |  awk '{print,/(4.485E-32)}' > eff""_H.dat

done

我想得到的是

case="NONE"
for i in 300.0000 500.0000
do
 awk '$3<0.0{print $0}' $NONE.eff |  grep $i  |  awk '{print $3*(-1),$7/(4.485E-32)}' > eff"$i"_H.dat
done

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)