Valahogy senki sem nyert szerintem.
Egyrészt miért két szögletes zárójel? Nálam csak egy kell:
norbi@martin:~$ which [
/usr/bin/[
Aztán az sem nyert, hogy két egyenlőségjel kell az egy helyett, mert ez nem C. Két string azonosságának vizsgálatára az
=
jel szolgál (lásd:
man test
).
További probléma, hogy a
test
számára a
&&
nem a logikai és operátora, helyette a
-a
paramétert szereti.
Aztán meg a VOLUME előtt néhol lemaradt a $.
Tehát mondjuk
if [[ $1 = '-i' && VOLUME -lt 100 ]]; then
helyett
if [ $1 = '-i' -a $VOLUME -lt 100 ]; then
esetleg
if [ $1 = '-i' ] && [ $VOLUME -lt 100 ]; then
Ezek után sem lesz teljesen hibátlan :)