Los ejecutables no funcionan como los normales

Los ejecutables no funcionan como los normales

Cuando escribo este comando

nohup CloudCompute.command &

produce el resultado

[1] 782

que es lo que quiero. (Es el número PID por cierto)

Entonces, cuando ejecuto este mismo comando en un ejecutable ( .command) e intento agregar el resultado a un archivo, no funciona. Simplemente imprime lo que CloudCompute.commandgenera, no el PID real que se muestra cuando lo ejecuta. Estoy seguro de que está en el mismo directorio.

¿Por qué está pasando esto? ¿Qué puedo hacer para que el ejecutable produzca el mismo resultado que escribirlo manualmente?

Gracias

Respuesta1

¿Por qué está pasando esto?

Esa salida:

[1] 782

no es del ejecutable. Eso es lo que bashescribe en la terminal, cuando ejecutas algo en segundo plano. Es el número de trabajo [1]y el PID 782del proceso. Más tarde, cuando finalice el proceso, verá algo como:

[1]+  Done                    command

Esto también es al bashnotar que el proceso con el trabajo número 1 ha finalizado.

Cuando se ejecuta un comando en segundo plano, el PID se almacena en la variable $!:

$ sleep 10 &
[1] 1234
$ echo $!
1234

¿Qué puedo hacer para que el ejecutable produzca el mismo resultado que escribirlo manualmente?

Por lo tanto, su ejecutableesproduciendo el mismo resultado.

información relacionada