¿Cómo no actualizar varios programas SAS a la vez?

¿Cómo no actualizar varios programas SAS a la vez?

Tengo varios programas SAS

test1_2.sas
test3_4.sas
test7_8.sas

y espero nohupesos guiones de una vez. Intenté crear un contenedor de shell como test.sh:

#test running multiple files
testing1_2.sas &
testing3_4.sas &

y traté de llamar nohup sas test.sh &y nohup test.sh &. Ambos comandos me dicen test.shque no está en el directorio actual cuando está claramente guardado en la carpeta.

Todavía soy bastante nuevo en los scripts de shell y me gustaría recibir ayuda para encontrar la forma correcta de ejecutar nohupmúltiples programas SAS. ¡Gracias!

Respuesta1

No soy un gran admirador de nohup (en su lugar uso disown), pero si pones 'nohup' delante de cada comando en un script de shell, lograrás la parte nohup de tu pregunta.

Sin embargo, creo que sus archivos son programas SAS. Si desea que SAS se ejecute en paralelo en cada programa SAS:

nohup sas test1_2.sas &
nohup sas test3_4.sas &
etc.

Esto ejecutará comandos SAS independientes, cada uno con su propio programa SAS.

Continuando con el comando nohup, si producen resultados, todos escribirán en nohup.out al mismo tiempo. Para evitarlo, escriba los mensajes de salida y de error en un archivo separado para cada comando:

nohup sas test1_2.sas > output1_2.file 2>&1 &
nohup sas test3_4.sas > output3_4.file 2>&1 &
etc.

Agregado para incluir código de comentarios:

Para invocar el comando test.sh

bash test.sh

(donde "bash" es su shell favorito) o márquelo como ejecutable:

chmod +x test.sh

Como eres nuevo, asegúrate de hacer clic en la marca de verificación si crees que esta es la respuesta correcta a tu pregunta.

información relacionada