Cómo ejecutar varios comandos simultáneamente en Linux

10 ott 2022 2 min di lettura
Cómo ejecutar varios comandos simultáneamente en Linux
Indice dei contenuti

Introducción

En este artículo, aprenderemos cómo ejecutar varios comandos al mismo tiempo en Linux. Cada operador tiene sus propias ventajas en la separación de comandos. Este tutorial ayudará a mejorar un poco la forma en que ejecutamos comandos y creamos scripts de shell.

El sistema operativo Linux ofrece una interfaz de línea de comando simple para administrar el sistema. Hay shells como Bash, CSH y Zsh que aceptan comandos del usuario y los enrutan al kernel. El comando se utiliza para realizar algunas funciones en el sistema. También podemos especificar varios shells al mismo tiempo y ejecutarlos uno tras otro.

Hay tres opciones distintas que utilizan los operadores separadores. En la siguiente sección, los veremos en detalle.

Usa punto y coma (;)

Los puntos y comas (;) separan los comandos para garantizar que los comandos subsiguientes se ejecuten independientemente de los estados de salida de los anteriores. Utilice esta opción para asegurarse de que el comando se ejecute después de que se complete el anterior.

Sintaxis:

command1;  command2;  commandN

Ejemplo:

date; pwd; whoami 
Sun Aug  7 03:51:00 UTC 2022
/home/noviello
noviello

Incluso si el segundo comando falla debido a un error de autorización, el tercer comando aún se ejecuta en los siguientes comandos:

date; touch /root/a.txt; whoami 

Utilice el operador lógico AND (&&)

Después de la ejecución exitosa del comando anterior, también se ejecutará el siguiente comando. El operador lógico AND (&&) comprueba el estado de salida del comando anterior.

Sin embargo, si el comando anterior terminó con un estado de salida distinto de cero, la ejecución se detendrá aquí. En este caso, no se ejecutarán comandos posteriores.

Sintaxis:

command1 &&  command2 && commandN

Ejemplo:

mkdir ./backups && cd ./backups 

El último comando fallará si el primer comando falla por algún motivo:

 mkdir /root/backups && cd /root/backups 
mkdir: cannot create directory ‘/root/backups’: Permission denied

Utilice el operador lógico OR (||)

La condición OR lógica (||) comprueba el estado de salida del comando anterior y ejecuta el siguiente comando solo si el comando anterior falló.

Sintaxis:

command1 || command2 || commandN

Puede usar esta construcción en scripts de shell para determinar si un archivo o comando está disponible. Por ejemplo, en un script de copia de seguridad, puede verificar si /usr/bin/mysqldumpexiste o no, y si no, puede imprimir un mensaje o finalizar el proceso:

[ -s /usr/bin/mysqldump ] || echo "command not found" 

Úselo para buscar un comando o archivo que no existe en su sistema. Esto es útil para scripts bash que crean archivos si no existen. También puede detener la ejecución del script si faltan los archivos necesarios:

 [ -s /usr/bin/not_a_cmd ] || echo "command not found" 

Conclusión

En este artículo, veremos cómo ejecutar varios comandos al mismo tiempo en Linux. También veremos los diversos operadores que se utilizan para separar los comandos entre sí. Cada operador afecta la forma en que se ejecuta el comando y cada uno tiene sus propias ventajas. Este tutorial proporcionará información útil para cualquier persona interesada en mejorar su ejecución de comandos o sus habilidades de creación de scripts de shell.

Buy me a coffeeBuy me a coffee

Supportaci se ti piacciono i nostri contenuti. Grazie.

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.