gnuplot
を使用してプロットを自動化するbashスクリプトがありますが、gnuplot
のloadコマンドはbashスクリプトでは機能しません。コマンドは単に止まってしまいます。bashスクリプトでgnuplotのロードが機能しない
#!/bin/bash
for k in _1 +1 _2 +2 _3 +3 _4 +4 _5 +5 _6 +6
do
cd $k/surface
for i in s ss
do
cd $i
for j in `ls -d */`
do
if [ "$j" != "unrelax/" ]; then
cd $j/spin
echo $k$i$j
gnuplot
load 't-dos.plt'
exit
cd ../../
fi
done
cd ..
done
cd ../../
done
が含まれています:
cat > t-dos.plt << eof
fermi=$(head -6 DOSCAR | tail -1 | awk '{print $4}')
plot 't-dos' u (\$1-fermi):2 w l
replot 't-dos' u (\$1-fermi):3 w l
set term post enhanced color
set output 't-dos.ps'
rep
eof
私の出力は次のようである:
はgnuplotのを入力し、永遠にそこ
ご質問はうまくフォーマットされていません。これを修正するにはコードをインデントしてください。 – mhoff
gnuplotと入力して.pltファイルを特定のディレクトリにロードするだけで、問題なく動作します。しかし、bashスクリプトでは動作しません。 OMG ... –
真ん中に 'gnuplot t-dos.plt'を使ってください。 –