La solución portátil
Uso script
! Por ejemplo:
Terminal personal:
> script -f /tmp/lecture1.scrpt #use -F instead on MacOS
> ... #start doing things here!
Terminal de presentación:
> #after this, terminal will continuously print whatever's written to personal terminal
> tail -F /tmp/lecture1.scrpt
Cómo funciona
El script
comando copia todo lo escrito en la pantalla del terminal (¡incluido lo que escribe!) En un archivo que toma como parámetro. Por lo general, todo se escribe en el archivo después de finalizar el script (escribiendo exit
). Sin embargo, la -f
opción hace script
que se vacíe su búfer después de cada escritura (en MacOS, esto será -F
o -t 0
). Luego, en el terminal de presentación, puede usar tail -F
para ver los contenidos continuamente a medida que se escriben.
Cosas a tener en cuenta
Dado que un terminal está escribiendo en un archivo y el otro está leyendo, ¡esto puede hacerse entre diferentes usuarios! Esto significa que puede hacer que alguien ingrese con muy pocos permisos y siempre y cuando coloque el archivo de secuencia de comandos en una ubicación que pueda leer, aún podrá presentarles. (es decir: si tiene un servidor al que sus alumnos tienen acceso, puede crear un archivo .scrpt que solo sea legible para ellos para que puedan seguirlo en sus propias pantallas)
Dada la naturaleza de este método, una terminal está conduciendo y la otra solo está mirando.
Este método también tiene la ventaja adicional de hacer que sea más fácil dejar de duplicar, hacer un trabajo secreto y comenzar a duplicar todo sin salir de su terminal personal. Esto se puede hacer con lo siguiente:
Terminal personal:
> exit #end script session; stop writing to /tmp/lecture1.scrpt
> ... #do secret things not safe for student eyes!
> script -f -a /tmp/lecture1.scrpt #begin writing again with -a to append
Más diversión con script
!
El propósito de script
es grabar su sesión de terminal para que pueda reproducirse más tarde (resulta que se trata de un caso especial de reproducción mientras se está grabando). Para ayudar con esto, script
tiene la -t
opción de registrar el tiempo junto con lo que está escrito en la pantalla. Para usarlo, comience su sesión de script con:
> script -f -t 2>/tmp/lecture1.timing /tmp/lecture1.scrpt
Y reprodúzcalo (¡con tiempo!) Con:
> scriptreplay -t /tmp/lecture1.timing -s /tmp/lecture1.scrpt
¿Tiene un estudiante que le envió un correo electrónico diciéndole que estaría enfermo y no puede hacer una conferencia? ¿O simplemente quiere darles a sus alumnos más material de lectura? Si graba su voz durante la conferencia (y comienza el guión aproximadamente al mismo tiempo que la grabación), ¡entonces sus estudiantes podrían reproducir su sesión terminal con su voz y obtener la experiencia de la conferencia completa!
¿Tiene un estudiante al que le gusta reproducir todos sus videos a una velocidad 2x? scriptreplay
toma un "divisor" por el que multiplica la velocidad de juego. Simplemente pasa -d 2
a jugar a una velocidad 2x (ten en cuenta que este es un valor doble, ¡por lo que incluso podrías hacerlo -d .5
a media velocidad!).