cambio de procesos detenidos en linux bash (usando masilla)

5

Accediendo a un servidor remoto (Ubunty Hardy) a través de ssh (masilla), puedo dejar de ejecutar 'programas' con CTRL-Z (señal de pausa). Puedo tener varios trabajos pausados, lo que puedo ver con el comando 'trabajos'.

La pregunta es si es posible (o si ya existe) configurar un acceso directo para cambiar entre procesos ...

Es decir, un atajo equivalente a:

PAUSE current process
fg 'next' (brings to foreground the next stopped application)

El objetivo es lograr un equivalente a ALT-TAB a través de masilla ... :)

una varilla
fuente

Respuestas:

7

Probablemente se beneficiaría GNU screen(o la byobuvariante en Ubuntu) para poder cambiar entre sesiones. De esa manera, sus otras sesiones seguirán ejecutándose en lugar de detenerse / suspenderse como propone aquí.

Dirk Eddelbuettel
fuente
sí, es genial, lo probé ... cambia un poco mi caparazón, más funciones de las necesarias ... ¡gracias!
arod
4

Puede usar fg %ndonde n es la identificación de trabajo que ve entre corchetes cuando la usa jobs. Además, puede usarlo fg %-para trabajos anteriores.

Consulte http://www.opengroup.org/onlinepubs/000095399/basedefs/xbd_chap03.html Sección 3.203 ID de trabajo de control de trabajo

niry
fuente
@niry: O simplemente fg nprescindir del porcentaje. :) De todos modos, creo que está preguntando si puedes configurar una tecla para escribir de manera efectiva ^Zfg $(tail jobs | cut -f1 "-d ")o similar.
Lucas Jones
exactamente, eso es lo que estoy buscando
sé acerca de "fg n", pero estoy buscando si es posible configurar un acceso directo para hacer ^ Zfg $ (trabajos de cola | corte -f1 "-d") o similar
En ese caso, la pantalla es tu amigo, mi amigo. 1up @Dirk.
niry
1
Desde Windows, use masilla como antes. Luego, en el servidor, inicie screen(o, preferiblemente byobu) y agregue sesiones adicionales entre las que puede cambiar.
Dirk Eddelbuettel