Los empleos repudiados aún se detienen tras su salida

Los empleos repudiados aún se detienen tras su salida

Me conecto a un servidor remoto y ejecuto algo como esto:

cat /dev/zero > /dev/null & disown %-

Luego lo hago logout, me vuelvo a conectar y psno muestra ningún catproceso en ejecución. ¿Por qué?

Respuesta1

Este comando funciona por mi parte. Parece que se necesitan muchos recursos. Quizás quieras probar:

sleep 999 & disown %-

y en su lugar, haga un ps aux | grep sleepdespués de volver a iniciar sesión.

Sin embargo, si sabes que quieres abandonar el proceso antes de iniciarlo, puedes usar nohup:

nohup sleep 999

Respuesta2

Utilice %%o %+para el trabajo "actual" (más reciente en segundo plano). %-es para elanteriortrabajo, que es el segundo trabajo detenido o en segundo plano más recientemente. Significan lo mismo si hay un solo trabajo. Pero si dejó algunos trabajos en segundo plano ejecutándose en una parte anterior de su sesión de shell o script, la forma en que los está utilizando %-probablemente no esté dirigida al trabajo que cree que es.

información relacionada