
Estoy intentando ejecutar un programa con xterm y luego cerrar xterm con el programa en ejecución, pero parece que esto no funciona como esperaba.
En bash existe la opción bash -c [command]
¿hay algo en xterm también? Actualmente lo estoy usando, xterm -e [command]
pero esto mantiene la ventana de xterm abierta hasta que mi programa haya terminado. Pero quiero abrirlo, ejecutar el programa, cerrarlo y mantenerlo ejecutándose.
¿Por qué quiero que un programa se inicie a través de xterm cuando ni siquiera lo estoy usando? Estoy llamando a esto a través de xpra en otra computadora, pero no es posible iniciar el programa solo porque lo necesito con el entorno en la otra computadora.
¿Hay una manera de hacerlo?
Respuesta1
No creo que lo necesites xpra
. ssh
es una buena elección
ssh user@hostname /path/to/program
o ssh
+screen
ssh user@hostname "screen /path/to/program"
o xpra
+screen
xpra user@hostname "screen /path/to/program"
Respuesta2
Pareces estar confundido acerca de cómo funcionan las cosas. No necesitas una terminal para ejecutar un programa.
"Comenzar xterm
para poder iniciar un proceso y luego salir xterm
" se reduce a "iniciar un proceso" y puede descartarlo xterm
por completo.
Supongo que estás buscando
nohup command >command.out 2>command.err &
que comienza command
como un proceso en segundo plano (debido a &
) con salida command.out
y mensajes de error a command.err
.
Si no le importa la salida o el manejo de la señal con nohup
, es posible que simplemente desee
command &
Esto no le permite interactuar con el comando en segundo plano (pero tampoco cerrarlo, xterm
así que supongo que no lo necesita); Si desea poder hacer eso, considere screen
o tmux
que le permite ejecutar el programa en una terminal virtual de la que puede desconectarse y volver a conectarse más tarde.