Cómo ejecutar dos o más comandos de terminal a la vez en Linux

00_lead_image_combining_commands

Si usa Linux, sabe lo útil que puede ser la línea de comandos para trabajar con archivos, instalar software y ejecutar programas. Pero puede ser aún más eficiente si ejecuta varios comandos a la vez.

La combinación de dos o más comandos en la línea de comandos también se conoce como «encadenamiento de comandos». Le mostraremos diferentes formas en las que puede combinar comandos en la línea de comandos.

Opción uno: el operador de punto y coma (;)

El operador de punto y coma (;) le permite ejecutar varios comandos en sucesión, independientemente de si cada comando anterior tiene éxito. Por ejemplo, abra una ventana de Terminal (Ctrl + Alt + T en Ubuntu y Linux Mint). Luego, escriba los siguientes tres comandos en una línea, separados por punto y coma, y ​​presione Entrar. Esto le dará una lista del directorio actual ( ls), averiguará en qué directorio se encuentra actualmente ( pwd) y mostrará su nombre de inicio de sesión ( whoami) de una vez.

ls; pwd; quién soy

Tampoco es necesario que ponga espacios entre el punto y coma y los comandos. Puede ingresar los tres comandos como ls;pwd;whoami. Sin embargo, los espacios hacen que el comando combinado sea más legible, lo cual es especialmente útil si está colocando un comando combinado en un script de shell .

01_comandos_combinadores_con_operador_semicolon

Opción dos: el operador lógico AND (&&)

Si desea que el segundo comando solo se ejecute si el primer comando es exitoso, separe los comandos con el operador lógico AND, que son dos símbolos y símbolos ( &&). Por ejemplo, queremos crear un directorio llamado MyFolder y luego cambiar a ese directorio, siempre que se haya creado correctamente. Entonces, escribimos lo siguiente en la línea de comando y presionamos Enter.

mkdir MyFolder && cd MyFolder

La carpeta se creó correctamente, por lo que cdse ejecutó el comando y ahora estamos en la nueva carpeta.

Recomendamos utilizar el operador lógico AND en lugar del operador de punto y coma la mayor parte del tiempo ( ;). Esto asegura que no hagas nada desastroso. Por ejemplo, si ejecuta un comando para cambiar a un directorio y luego fuerza la eliminación de todo en ese directorio de forma recursiva ( cd /some_directory ; rm -Rf *), podría terminar arruinando su sistema si el cambio de directorio no sucedió. No es que le recomendamos que ejecute un comando para eliminar incondicionalmente todos los archivos de un directorio a la vez.

02_comandos_combinadores_con_operador_y_logico

Opción tres: el operador lógico OR (||)

A veces, es posible que desee ejecutar un segundo comando solo si el primer comando no funciona . Para hacer esto, usamos el operador lógico OR, o dos barras verticales ( ||). Por ejemplo, queremos verificar si el directorio MyFolder existe ( [ -d ~/MyFolder ]) y crearlo si no existe ( mkdir ~/MyFolder). Entonces, escribimos el siguiente comando en el símbolo del sistema y presionamos Enter.

[-d ~ / MyFolder] || mkdir ~ / MyFolder

Asegúrese de que haya un espacio después del primer corchete y antes del segundo corchete o el primer comando que comprueba si el directorio existe no funcionará.

En nuestro ejemplo, el directorio MyFolder no existe, por lo que el segundo comando crea el directorio.

03_comandos_combinadores_con_operador_o_logico

Combinar varios operadores

También puede combinar varios operadores en la línea de comandos. Por ejemplo, primero queremos verificar si existe un archivo ( [ -f ~/sample.txt ]). Si es así, imprimimos un mensaje en la pantalla indicándolo ( echo “File exists.”). Si no, creamos el archivo ( touch ~/sample.txt). Entonces, escribimos lo siguiente en el símbolo del sistema y presionamos Enter.

[-f ~ / sample.txt] && echo "El archivo existe". || toque ~ / sample.txt

En nuestro ejemplo, el archivo no existía, por lo que fue creado.

04_usando_dos_operadores_diferentes

Aquí hay un resumen útil de cada uno de los operadores utilizados para combinar comandos:

  • A ; B – Ejecute A y luego B, independientemente del éxito o fracaso de A
  • A && B – Ejecuta B solo si A tuvo éxito
  • A || B – Ejecute B solo si A falló

Todos estos métodos de combinación de comandos también se pueden usar en scripts de shell tanto en Linux como en Windows 10 .

También puede corregir automáticamente la ortografía y los errores tipográficos al usar «cd» en la línea de comandos en Linux para evitar consecuencias drásticas al combinar comandos.