Hoy te mostraré cómo ejecutar un comando en segundo plano o en el background, de modo que no tengas que esperar a que finalice ni tengas que tener la terminal abierta para que se ejecute.
Te enseñaré cómo ejecutar un comando y dejarlo corriendo en el fondo, de ese modo puedes no depender de la terminal o ejecutar varios comandos sin esperar a que uno termine para ejecutar el siguiente.
La sintaxis básica es:
comando &
Es decir, simplemente colocas un ampersand al final. Solo que todos los mensajes que sean enviados van a aparecer en la terminal desde la cual el comando fue invocado, y no van a guardarse en ningún lugar.
Entonces si no quieres ver mensajes repentinos en la terminal, redirecciona stderr
a stdout
, y stdout
a /dev/null
así:
comando > /dev/null 2>&1 &
Vamos a dividirlo. Primero redireccionamos todo lo que imprima el comando a /dev/null
.
“lo que imprima el comando” es stdout
, que se identifica con el descriptor de archivo número 1, pero también estamos indicando que lo de stderr
(descriptor de archivo 2) se vaya a stdout
con el 2>&1
.
Finalmente el &
del final hace que el comando se ejecute en segundo plano. De este modo vas a ejecutar un comando en segundo plano y no se va a imprimir nada en la terminal.
Yo siempre prefiero guardar un registro de errores o simplemente un registro de todo lo que imprime el comando que he ejecutado. Para guardar la salida de los comandos, redirecciona la salida a un archivo en lugar de /dev/null
así:
comando > /ruta/del_archivo.log 2>&1 &
Como te dije anteriormente, yo estoy ejecutando comandos en segundo plano pero guardo lo que sea que impriman.
En mi caso tengo un archivo binario llamado servidor
, redirecciono su salida a ~/control_arcade/servidor.log
pero lo ejecuto en segundo plano y además redirecciono stderr
a stdout
.
~/control_arcade/servidor >> ~/control_arcade/servidor.log 2>&1 &
Nota: yo uso >>
en lugar de >
porque no quiero sobrescribir el contenido del archivo, quiero agregar la salida a lo existente en el archivo.
El día de hoy te mostraré cómo crear un servidor HTTP (servidor web) en Android…
En este post te voy a enseñar a designar una carpeta para imprimir todos los…
En este artículo te voy a enseñar la guía para imprimir en una impresora térmica…
Hoy te voy a mostrar un ejemplo de programación para agregar un módulo de tasa…
Los usuarios del plugin para impresoras térmicas pueden contratar licencias, y en ocasiones me han…
Hoy voy a enseñarte cómo imprimir el € en una impresora térmica. Vamos a ver…
Esta web usa cookies.