Cuando ejecuto el script como $./calc.sh -b 1 + 2 3 + 4, me sale que mi variable OPER no es reconocida, otro problema que tengo es que expr no me evalúa la expresión que deseo calcular, agradecería me puedan guiar.
Código script:
Ver original
#!/bin/sh if [ $# -eq 0 ]; then echo "use: $0 | -b <operando1> <operador1> <operando1> ... <operandoN> <operadorN> <operandoN>" >&2 exit 1 else #verificamos la opcion PARAMS=$# case $1 in -b)CONT=0 for DATO in $@; do case $DATO in -b) ;; +|-|\*|/)OPER = $DATO ;; *) if [ $CONT -eq 0 ]; then NUM1=$DATO (( ++CONT )) else echo expr $NUM1 $OPER $DATO (( CONT = 0 )) fi;; esac done exit;; *) if [[ $(( $((PARAMS - 1)) % 3 )) = 0 ]]; then echo "falta" else echo "La cantidad de parametros en la opcion debe ser multiplo de 3" >&2 fi;; esac fi