私は以下のコードを使用して1つのファイルからレコードを読み取り、その6フィールドを他のファイルと比較して、それに応じて出力をファイルに書き込みます。
for FILE_NAME in `GET_FILE_LIST $1 $2 $3`
do
y=`echo $FILE_NAME|awk '{print $6}'`"X"
echo "Start --- `date`" >> $LOGF
echo $y >> $LOGF
cat $x |nawk ' BEGIN { FS=",";
while ((getline < "SUBNO.txt") > 0)
myarray[$1] = $2
if(myarray[$6]==0)
' > {${FILE_NAME}_P}
else
' > {${FILE_NAME}_S}
fi
UPD_FILE_STATUS $FILE_NAME 35
done
問題は、次のエラーが発生していることです。
./TEST.sh: line 95: syntax error near unexpected token `else'
./TEST.sh: line 95: `else'
次のような場合があります。1つのテキストファイルに次のようなデータがあります。
GGO 099E7C5S 34 533196588 45696 22
PPC 93403DSA 35 784397429 44696 56
2番目のファイルのデータは次のようになります。
22,0
24,1
26,0
私がやりたいのは、最初のファイルから行を書き込み、最後のフィールド値を2番目のファイルと比較することです。値が0の場合は、新しいfile_1に入れ、1の場合は、file_2に入れます。これで問題が解決することを願っています。助けてください。