Solo para agregar algunos puntos a la excelente respuesta de @Wilf,
puede ejecutar comandos en paralelo si lo desea por cualquier motivo, por ejemplo, un autostart
script para OpenBox podría verse así:
#!/bin/bash
nitrogen --restore &
tint2 &
tilda
Esto establecerá una imagen de fondo usando nitrogen
, inicie el panel tint2
e inicie la consola desplegable de estilo Quake3 tilda
, todo al mismo tiempo. Esto es útil si no necesita un programa para finalizar antes de iniciar el siguiente. ¡No es el caso para apt-get update
y apt-get upgrade
aunque!
Observe el &
letrero al final de cada línea. Esto hará que el shell bifurque ese proceso en segundo plano y continúe la ejecución. Observe cómo es diferente &&
, que es básicamente una and
señal, command_1 && command_2
se ejecutará command_1
y si sale con éxito, solo entonces se ejecutará command_2
, mientras command_1 & command_2
que comenzará el segundo justo después del primero.
Además, podría apilar comandos para que se ejecuten en serie, de esta manera:
#!/bin/bash
apt-get update
apt-get upgrade
Esto se ejecutará apt-get upgrade
después de que apt-get update
haya terminado , pero independientemente del resultado. Entonces, incluso si, por ejemplo, la actualización se cierra con un error de red, la actualización aún se ejecutará.
También puede hacer esto en una sola línea, utilizando el ;
signo: apt-get update ; apt-get upgrade
. Nuevamente, esta solución no es óptima para estos comandos particulares, pero puede ser útil en otras situaciones.
Un punto final rápido, también puede dividir líneas que contengan &&
como tales:
command_1 &&
command_2
Esto será lo mismo que command_1 && command_2
.