Concatenar Comandos en Linux y sus Variantes

imagesLa siguiente entrada es un ‘tip’ que me sirve personalmente como recordatorio, seguro que a más de uno le vendrá bien.

Aquí van las variantes a la hora de concatenar comandos en linux, algo muy básico pero que, como todo, si no se práctica se olvida.

 

Con | hace que la salida del primero se convierta en la entrada del segundo.

Ejemplo:
[root@server ~]# cmd1 | cmd2

 

Con & hará que los dos (o más) comandos se ejecuten de manera simultanea.

Ejemplo:
[root@server ~]# cmd1 & cmd2

 

Con || El segundo comando se ejecutará si el primero termina sin éxito.

Ejemplo:
[root@server ~]# cmd1 || cmd2

 

Con && El segundo comando se ejecutará solo si el primero termina con éxito.

Ejemplo:

[root@server ~]# cmd1 && cmd2

 

Con ; El segundo comando se ejecutará sin importar el resultado del primero.

Ejemplo:

[root@server ~]# cmd1 ; cmd2

Autor: Jorge Bastida Cano

Programador de Software y Apasionado de las nuevas tecnologías.

6 opiniones en “Concatenar Comandos en Linux y sus Variantes”

  1. Una pregunta, los comandos deben estar en la misma línea o pueden estar en la siguiente línea?, Ej:
    comando_1 &&
    comando_2

    es lo mismo que comando_1 && comando_2 ??

    Gracias.

    1. Hola Carles, muchas gracias por tu comentario.

      ¿Cómo insertarías ese salto de línea?. Ten en cuenta que INTRO es = a EJECUTAR comando. Otra cosa es que quieras hacerlo en un script. Dime, ¿qué necesitas hacer?

      Saludos.

      1. Una pregunta que pena, si hago un script.sh en donde cada comando arroja la letra (Y) para confirmar,coo lo hago posible ? es decir que cada comando le da una opcion al usuario y hasta que no se ejecute dicha confirmación, no se ejecute todo — gracias y por cierto excelente pagina

        1. Gracias por el comentario.

          No sé si te he entendido bien, lo que quieres ¿es lo siguiente?

          «pregunta a usuario (yes or no)
          si respuesta si entonces lanzo comando 1
          si respuesta no entonces exit

          pregunta a usuario (yes or no)
          si respuesta si entonces lanzo comando 2
          si respuesta no entonces exit»

          ¿O bien lo que necesitas es esto?

          «pregunta a usuario (yes or no)
          si respuesta si entonces lanzo comando 1, 2…n
          si respuesta no entonces exit»

          Gracias!

Deja una respuesta

Tu dirección de correo electrónico no será publicada.

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.