コマンドの最初の文字はシェルによって自動的に削除されます。

コマンドの最初の文字はシェルによって自動的に削除されます。

あるディレクトリの一部のデータファイルを現在の作業ディレクトリにコピーし、gnuplotを使用してそのファイルを作業ディレクトリ内の他のファイルと一緒にプロットする単純なシェルスクリプトがあります。スクリプトは次のとおりです。

#!/bin/sh
SILVACO_DIR="/home/pbaikadi/my_silvaco/atlas/mat1-mat2-hetero/"
LATEST_DAT_FILE=$(ls -t $SILVACO_DIR|head -1)
FILE_PATH=$(readlink -f $SILVACO_DIR$LATEST_DAT_FILE)
cp -v $FILE_PATH .
FILE=$(ls -t $PWD|head -1)
echo "$FILE"
sed -i '1,4d' "$FILE"
awk '{$1=$1*1000;print $1>"temp1.dat";print $2>"temp2.dat"}' "$FILE"
paste temp1.dat temp2.dat > "$FILE"
rm temp1.dat temp2.dat
gnuplot <<EOF -persist
set key font "Helvetica,15"
set tics font "Helvetica,10"
set xlabel 'Position (in nm)' font "Helvetica,15" offset 0,0,0
set ylabel 'Conduction Band Energy in eV' font "Helvetica,15" offset 4,0,0
set title 'Conduction Band Cutline along Y and between the gates' font "Helvetica,15"
plot 'cond_cutline_y_between_gates.txt' w linespoints title "With PETSc"
#replot "$FILE" w linespoints title "With Silvaco"
EOF
rm $FILE 

私が直面している問題は、EOF区切り文字の前のすべてのコマンドの最初の文字が削除されることです。 #をコマンドの最初の文字として入れてこの問題を解決しようとしましたが、うまくいきましたが、元のコードで行われた間違いを理解したいと思います。どんな助けでも大変感謝します。

ベストアンサー1

おすすめ記事