Korzystam z poniższego skryptu, aby przejść dwa dni wstecz, gdy skrypt uruchamia się o dwa dni w roku, a także sprawdzam pierwszy i drugi dzień każdego miesiąca i cofam się o dwa dni wstecz.
if [$month="01"] && [$day="01"];
then
date="$last_month/$yes_day/$last_year"
fulldate="$last_month/$yes_day/$last_year"
else
if [$month="01"] && [$day="02"];
then
date="$last_month/$yes_day/$last_year"
fulldate="$last_month/$yes_day/$last_year"
else
if [ $day = "01" ];
then
date="$last_month/$yes_day/$year"
fulldate="$year$last_month$yes_day"
else
if [ $day = "02" ];
then
date="$last_month/$yes_day/$year"
fulldate="$year$last_month$yes_day"
else
date="$month/$yes_day/$year"
fulldate="$year$month$yes_day"
fi
fi
fi
fi
Ale mój zły otrzymuję poniższy komunikat o błędzie
Etime_script.sh: line 19: [06=01]: command not found
Etime_script.sh: line 24: [06=01]: command not found
if [ ... ]; then
), więc nie jest to takie niezwykłe.
[
. Dodatkowo spójrz naelif
oświadczenie; pomoże ci to posprzątać. Również średniki po instrukcjach if nie są konieczne, ale również nie są niepoprawne, po prostu dziwne.