Página principal » cómo » Cómo ejecutar dos o más comandos de terminal a la vez en Linux

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

    Si usa Linux, sabe cuán útil puede ser la línea de comandos para trabajar con archivos, instalar software y ejecutar programas. Pero puede ser incluso 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 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 ), averigüe en qué directorio está actualmente ( pwd ), y muestra su nombre de usuario ( quién soy ) de una vez.

    ls; pwd; quién soy

    No tienes que poner espacios entre los puntos y comas y los comandos, tampoco. Puede introducir 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.

    Opción Dos: El Operador Lógico Y (&&)

    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 ampersands ( && ). Por ejemplo, queremos crear un directorio llamado MyFolder y luego cambiarlo 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 fue creada exitosamente, por lo que discos compactos comando fue ejecutado 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 el directorio de forma recursiva ( cd / some_directory; rm -Rf * ), podría terminar arruinando su sistema si el cambio de directorio no ocurriera. No es que le recomendamos que ejecute un comando para eliminar incondicionalmente todos los archivos de un directorio a la vez..

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

    A veces es posible que desee ejecutar un segundo comando solo si el primer comando lo hace no tener éxito. 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 lo hace ( mkdir ~ / MyFolder ). Entonces, escribimos el siguiente comando en el indicador 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 verifique si el directorio existe no funcionará.

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

    Combinando Operadores Múltiples

    También puede combinar varios operadores en la línea de comando. Por ejemplo, queremos comprobar primero si existe un archivo ( [-f ~ / sample.txt] ). Si lo hace, imprimimos un mensaje en la pantalla que lo dice ( echo "El archivo existe". ). Si no, creamos el archivo ( toque ~ / 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.

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

    •  UNA ; segundo  - Ejecute A y luego B, independientemente del éxito o el fracaso de A
    •  A && B  - Ejecutar B solo si A tuvo éxito
    •  A || segundo  - Ejecutar B solo si A falló

    Todos estos métodos de combinación de comandos también se pueden usar en scripts de shell en Linux y 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.