No estoy seguro de haber formulado la pregunta correctamente, pero digamos que tengo dos terminales virtuales abiertas y si escribo ls
una de ellas, obtengo el contenido del directorio enambosde ellos (el segundo no tiene que poder escribirse, solo necesita mostrar la salida estándar del primero). ¿Cómo haría para lograr esto?
Respuesta1
Como mencionó geekosaur, screen
hará lo que necesites (y mucho, mucho, más).
Primero, cree una sesión de pantalla con nombre para su comodidad en su primer terminal:
$ screen -S foo
En segundo lugar, adjunte a la sesión de pantalla en su segundo terminal:
$ screen -x foo
Respuesta2
Puedes usar script
para hacer esto.
Por ejemplo, si desea copiar toda su salida, /dev/tty1
ejecutaría
script -f /dev/tty1
A partir de ese momento, todo lo que escriba y todos los resultados del comando se duplicarán en /dev/tty1
.
script
inicia otro shell, así que cuando hayas terminado, puedes simplemente escribir exit
para finalizar script
.
La -f
idea es hacerlo en tiempo real. De lo contrario, /dev/tty1
solo verá el resultado cuando se muestre una línea completa (cuando se escribe un carácter de nueva línea en el tty).
Respuesta3
Depende exactamente de lo que estés buscando. Una solución fácil es script(1)
; GNU screen
en modo multiattach es una solución más sofisticada.