Unix: Operadores de control

Es extremadamente útil (y casi necesario) conocer los operadores de control de consola Unix, que te permitiran combinar comandos, a continuación os muestro el modo de usar estos operadores de control:

Ejecutar un comando si el anterior devuelve el estado “zero exit”:

Para ello utilizaremos el operador de control && El segundo comando solamente se ejecutará si el anterior devuelve estado “zero exit”, o lo que es lo mismo, se ejecuta correctamente, ejemplo:

cd tmp/a/b/c && tar xvf ~/archivo.tar

En este ejemplo, se descomprimira archivo.tar en la ruta a la que accedemos, pero solo si esta existe, o lo que es lo mismo, si “cd tmp/a/b/c” se ejecuta correctamente.

Ejecutar un comando si el anterior devuelve el estado ” non-zero exit”:

Ahora vamos a hacer justo lo contario, solo ejecutaremos el segundo comando si el primero falla. Para ello concatenaremos los comandos con el operador de control ||, ejemplo:

cd tmp/a/b/c || mkdir -p tmp/a/b/c

En este ejemplo, crearemos el árbol de directorios tmp/a/b/c solamente si el comando anterior falla, es decir, si no existe.

Los dos operadores de control pueden combinarse si se desea, para crear comandos un poquito más complejos, ejemplo:

cd tmp/a/b/c || mkdir -p tmp/a/b/c && tar xvf -C tmp/a/b/c ~/archive.tar

Artículo basado en Unix Tips de IBM.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *