Necesito ejecutar múltiples comandos usando nohup. Cada comando debe ejecutarse después del comando anterior.
Usé este comando como ejemplo:
nohup wget $url && wget $url2 > /dev/null 2>&1 &
Sin embargo, ese comando no funcionó.
¿Qué comando debo usar para este propósito?
shell
command-line
nohup
Ehsan
fuente
fuente

¿No sería mucho más sencillo crear su lista de comandos en un archivo shell separado, por ejemplo, command.sh, sin ningún tipo de nohup?
Entonces llamas:
fuente
Otros ya han respondido sobre
nohup. Como nota al lado práctico: Yo recomiendo hacer este tipo de cosas dentro de unascreenotmuxsesión. De esa manera puede desconectarse, luego volver a conectarse más tarde y ver la salida y el resultado final.fuente
Sería más simple así:
Sin embargo, esto puede causar problemas si las URL contienen caracteres especiales, por lo que para una opción más segura puede usar:
fuente
sh -ces a través de argumentos separados, que pueden ser accesibles a través de los parámetros posicionales ($0,$1, ...). No hay una manera fácil o sencilla de citar argumentos correctamente para el análisis de cadenas. Su intento de utilizar comillas dobles escapadas falla si en$urlsí contiene comillas dobles. Pruébeloa='problem"'; sh -c "echo \"$a\""usted mismo y vea: debería obtener un error de sintaxis porquesh -cintenta ejecutarseecho "problem"".$urly$url2se utilizan.