Ejecutando múltiples comandos a la vez en Linux

Ejecutando múltiples comandos a la vez en Linux

Aprenderemos sobre cómo ejecutar varios comandos simultáneamente en Linux en este artículo. Cada operador tiene sus propias ventajas cuando se trata de separar los comandos. Este tutorial ayudará un poco a mejorar cómo ejecutamos los comandos y los scripts de shell del autor.

El sistema operativo Linux ofrece una interfaz de línea de comandos simple para administrar el sistema. Hay conchas como Bash, CSH y ZSH que aceptan comandos del usuario y los enriquecen al núcleo. Se utiliza un comando para realizar alguna función en el sistema. También podemos especificar múltiples shells a la vez y ejecutarlos uno tras otro.

Hay tres opciones distintas disponibles utilizando los operadores de separadores. En la siguiente sección, los miraremos en detalle.

OperadorSintaxisDescripción
Semicolon (;)comando1; comando2Ejecutar ambos comandos uno por uno
Lógico y (&&)Command1 && Commnd2Ejecutar el comando2 solo si el comando1 es exitoso
Lógico o (||)Comando1 || comando2Ejecutar el comando2 solo si Commadn1 falló

Discutamos todas las opciones en detalle.

Uso de Semicolon (;)

Semicolons (;) Comandos separados para garantizar que los comandos posteriores se ejecuten independientemente de los estados de salida de los anteriores. Use esta opción para garantizar que el comando se ejecute después de la finalización del anterior.

Sintaxis:

comando1; comando2; comandante 

Ejemplo:

fecha; pwd; quién soy  Sábado 6 de agosto 01:56:05 UTC 2022 /Home /Rahul Rahul 

Aunque el segundo comando falla debido a un error de permisos, el tercer comando aún se ejecuta en los siguientes comandos:

fecha; toque /raíz /a.TXT; quién soy  Sábado 6 de agosto 01:59:31 UTC 2022 Toque: No se puede tocar '/root/a.txt ': permiso denegó a Rahul 
Ejecutando comandos separados por semicolon

Uso de lógico y operador (&&)

Tras la ejecución exitosa del comando anterior, el siguiente comando también se ejecutará. La lógica Y (&&) verificación del operador para el estado de salida del comando anterior.

Sin embargo, si el comando anterior terminó con distinto de cero Estado de salida, la ejecución se detendrá aquí. No se ejecutarán comandos posteriores en ese caso

Sintaxis:

command1 && command2 && commandn 

Ejemplo:

mkdir ./copias de seguridad && CD ./copias de seguridad  

El último comando no se ejecutará si el primer comando falló debido a cualquier motivo:

 mkdir /root /backups && cd /root /backups  mkdir: no se puede crear el directorio '/root/backups': permiso denegado 
Uso de comandos lógicos y entre múltiples

Uso de lógico u operador (||)

La lógica O (||) Verificación de condición para el estado de salida del comando anterior y ejecuta el siguiente comando siguiente si el comando anterior falló.

Sintaxis:

Comando1 || Comando2 || comandante 

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/mysqldump existe o no, y si no, puede imprimir un mensaje o finalizar el proceso.

[-s/usr/bin/mysqldump] || echo "comando no encontrado"  

Use esto para probar el comando o el archivo que no está en su sistema. Esto es útil para scripts bash que crean archivos si faltan. También puede detener la ejecución del script si faltan archivos requeridos.

 [-s/usr/bin/not_a_cmd] || echo "comando no encontrado"  
Usando lógicos o entre múltiples comandos

Conclusión

En este artículo, repasaremos cómo ejecutar múltiples comandos simultáneamente en Linux. También cubriremos los diversos operadores utilizados para separar los comandos entre sí. Cada operador afecta la forma en que se ejecuta un comando, y cada uno tiene sus propios beneficios. Este tutorial proporcionará información útil a cualquier persona interesada en mejorar sus habilidades de compra o escritura de shell-shell.