educatica!

educación, informática y demás

GNU/Linux bash, Shell scripts, Sistemas operativos

Bash shell scripts – Ejemplos con if

Comprobaciones simples

Muchas veces utilizamos la sentencia if para realizar una serie de acciones solo si se cumple una condición determinada. Si no se cumple dicha condición, no se realiza ninguna acción especial.

Comprobación de requisitos

La comprobación de parámetros suele ser una de los usos más habituales en shell scripts. Gracias a la sentencia if podemos comprobar si no se cumple una condición concreta que es necesaria para la ejecución del script.

Si el requisito no se cumple, podemos tomar dos alternativas, asignar un valor por defecto a dicho requisito o bien finalizar la ejecución del script indicando la situación al usuario que ha ejecutado el script.

En el primer caso, por ejemplo si necesitamos que se proporcione el nombre de un usuario del sistema por parámetro, pero no se proporciona, podemos optar por utilizar el nombre del usuario actual. En el segundo caso, mostraríamos un mensaje de error al usuario y terminaríamos la ejecución del script con el comando exit y un valor de retorno de error (cualquier valor distinto de 0).

Las comprobaciones de requisitos más típicas son las comprobaciones de parámetros pasados, de la ejecución del script como root o que los parámetros pasados cumplen con los rangos o valores necesarios.

Ejemplo 1 – Parámetros pasados

Comprueba si se han pasado cuatro parámetros al script. En caso contrario, muestra un mensaje de error y termina.

Comprueba que se ha pasado un valor en el primer parámetro, el nombre de un usuario del sistema. En caso contrario, muestra un mensaje de error específico y termina.

Comprueba que se han pasado el primer y segundo parámetro. En caso contrario muestra un mensaje de error genérico y termina la ejecución del script.

Comprueba que se ha pasado un valor en el primer parámetro y en el segundo parámetro. Si no se ha pasado valor en alguno de ellos se muestra un mensaje de error específico y termina la ejecución.

Deja un comentario

Tema creado por Anders Norén