Si desea expresar la siguiente prueba en shell (sh):
if ( a == 1 && ( b == 1 || b == 2 )) { ... }
Hasta ahora, lo mejor que he podido escribir es esto:
if [[ $a -eq 1 ]]; then
if [[ $b -eq 1 || $b -eq 2 ]]; then
...
fi
fi
No sé cómo componer && y || con precedencia correcta Buscar en Google no me ha dado ninguna respuesta (los tutoriales solo dan ejemplos básicos, si los hay)
¿Cuál es la sintaxis para combinar esos dos si en uno?
ksh? Entonces su código inicial requeriría solo un par de paréntesis más:if (( a == 1 && ( b == 1 || b == 2 ))); then :; fi