Índice

Encadenamiento de comandos

1. Ejecución secuencial

En lugar de escribir los comandos uno tras otro y esperar el fin de su ejecución antes de ejecutar el siguiente, es posible encadenar varios comandos en la misma línea, separándolos por punto y coma:

[javier]$ date  
mie sep 5 15:49:00 CEST 2018  
[javier]$ ps  
 PID TTY          TIME CMD  
 4511 pts/1    00:00:00 bash  
 4613 pts/1    00:00:00 ps  
[javier]$ date ; ps  
mie sep 5 15:49:01 CEST 2018  
 PID TTY          TIME CMD  
 4511 pts/1    00:00:00 bash  
 4624 pts/1    00:00:00 ps

Estos encadenamientos son prácticos cuando deben lanzarse sucesivamente varios comandos largos, sin que el usuario tenga que intervenir.

Los espacios alrededor del ; en la línea de comandos no son obligatorios, pero mejoran la legibilidad.

En el encadenamiento cmd1 ; cmd2 ; cmd3, el comando cmd2 se ejecuta al terminar el comando cmd1; igualmente, cmd3 se inicia cuando cmd2 ha terminado. Por el contrario, no hay ningún vínculo entre estos tres comandos; es decir, la ejecución de un comando no está condicionada por el resultado (código de retorno) del anterior.

En un script del shell, el punto y coma permite presentar varias instrucciones en una misma línea.

2. Ejecución condicional

Para ejecutar el comando cmd2 sólo si el comando ...