Hola
Supongamos que tengo este if:
if [ $num -ne 2 ]
then
Instrucciones
fi
¿Cómo la puedo transformar para preguntar que no se cumple cierta condición?
Sería algo así como:
if ![ $num -eq 2 ]
then
Instrucciones
fi
Pero lo que propongo no funciona.

Ponlo dentro de los corchetes
El símbolo ! debe ir dentro de los corchetes.
Fdo. Forense asesino, Censor fundamentalista, Fustigador de novatos y Patético maleducado
Muchas gracias, pero...
Muchas gracias,
Funciona pero, ¿y si la condición es compuesta?
Ejemplo: if [ $num -le 10 -a $num -ge 5]
Si ponemos el signo ! justo al abrir el corchete, ¿la negación afectaría a la variable o al "and? ¿No se pueden usar corchetes o paréntesis para agrupar?
Para empezar
En tu ejempolo afectaría a la condición por completo ya que el if mandará cómo parametro de salida un verdadero o falso y estas trabajando sobre una única condición diferenciada.
Para disitinguir dos condiciones de forma "independiente" (Aunque deberán darse ambas para que se de el caso), sería if [Condicion1] && [Condicion2];then
Afectaría únicamente a la condición abyacente, siempre y cuando delimites las diferentes condiciones con &&
En cuanto a lo de la exclamación para la negación de una condición puede redactarse de dos maneras:
1) if [ ! #? ];then
2) if ! [ #? ];then
MORALEJA
Lo que tu buscas es esto:
if [ ! $num -le 10 ] && [ $num -ge 5 ];then
Saludetes
Cakitux versión 1.0.0