0
以下は私のコードです。Unixシェル - 予期しないトークンの近くで構文エラーが発生しました
#!/bin/ksh
curdate=$(date '+%d%h,%Y')
while read line;
do
echo "$line" > new10.txt
str0=$(cut -f 2 new10.txt)
str01=$(cut -f 1 -d ',' new10.txt)
str1=$(cut -f 2 -d ',' new10.txt)
str2=$(cut -c 3 $str1)
if [ $str2=':' ];
then
str2=',2016'
finalstr=$str01$str2
if [ '01jan2017' -le $finalstr -le $curdate ];
then
finalstr1=$str01',2017'
else
finalstr1=$str01',2016'
echo $finalstr1 > datefinal.txt
fi
done < /export/home/islams/PISAS/userwiseutil/date.txt
私は、次のエラーを取得しています: date1.sh:行22:< /export/home/islams/PISAS/userwiseutil/date.txt」
'if'ステートメントの1つを閉じていません。私は2つの「if」と1つの「fi」しか見ない。また、読みやすいようにインデントを使用する必要があります。 – ccarton
見て、私はインデントを追加し、問題が明らかになります。あなたの投稿を読むことはより楽しいと、この種のエラーを解決します – Aaron
ありがとう、私の愚かな間違いのために申し訳ありません。範囲内の日付を比較するためのifステートメントが正しい場合は教えてください? –