2010-12-16 10 views
17

¿Cómo se evita que gnome-terminal se cierre después de que se haya salido su comando?Evitar que la terminal Gnome se cierre después de la ejecución

Llamo a gnome-terminal desde un cronjob, para crear un terminal accesible para el usuario. El terminal recibe inicialmente un programa específico para ejecutar. p.ej.

gnome-terminal --tab -e "/usr/bin/myprog" 

Esto funciona bien, excepto que cuando "myprog" sale, también lo hace el gnome-terminal. ¿Cómo lo mantengo funcionando, pero simplemente vuelvo a la línea de la terminal?

+6

Otra discusión sobre el mismo tema: http://stackoverflow.com/questions/3512055/avoid-gnome-terminal-close-after-script-execution –

+1

@Ignacio, es un término común. Google muestra más de 100k resultados para él ... – Cerin

+0

@ Ignacio, los términos "shell" y "terminal" son generalmente sinónimos. Si su vocabulario o entorno técnico es diferente, bien. Perdón por la confusion. – Cerin

Respuesta

21

Prueba esto:

gnome-terminal --tab -e "/bin/bash -c '/usr/bin/myprog; exec /bin/bash -i'" 
+0

Muy simplista. Gracias. – Cerin

3

crea un guión de la siguiente manera:

#!/bin/bash 
# myprog-wrapper.sh - runs /usr/bin/myprog and then starts a new bash session 
/usr/bin/myprog 
/bin/bash 

Dale el script de shell permiso de ejecución.

luego configurar una tarea cron para llamar a este script en lugar de llamar directamente myprog:

gnome-terminal --tab -e "/path/to/myprog-wrapper.sh" 

Reemplazar /bin/bash con su cáscara de elección.

2

Usted podría utilizar xterm o rxvt Unicode en lugar de gnome-terminal, los cuales tienen la opción -hold para este propósito.

21

alt text

Crear un perfil (es decir, mantener), ajuste "Cuando las salidas de comando: pulsados ​​los botones Abrir terminal" y luego

$ gnome-terminal --tab --profile hold -e /usr/bin/myprog 
+0

Debería haber alguna forma de crear un perfil con la opción 'mantener abierto el terminal' establecido solo mediante la línea de comando. –

+0

Dependiendo de su terminal gnome, puede usar gconf o gsettings para establecer o obtener el valor de esa propiedad: 'gconftool-2 -g/apps/gnome-terminal/profiles/Profile0/exit_action' –

Cuestiones relacionadas