Una de las cosas fascinantes de ser humano es que cada uno de nosotros tiene una forma específica de aprender. Algunas personas prefieren leer acerca de cómo se hace algo. A algunas personas les gusta seguir las instrucciones desde el principio, mientras que a otras les gusta conocerlas antes de involucrarse. Otros disfrutan escuchando entrenadores o podcasts. También hay un grupo que desea explicar en forma de video.
El problema con el video es que puede ser difícil de producir y comprimir, y requiere muchos cambios una vez hecho. Además de esto, los espectadores no pueden copiar y pegar los comandos de Linux del video en su terminal.
¿O pueden?
Esta script
y scriptreplay
El comando le permite grabar una sesión de terminal y luego reproducirla más tarde. No hay video involucrado.En cambio, los archivos de texto sin formato se denominan Mecanografiado se utiliza, por lo que el archivo es pequeño y el usuario puede copiar comandos durante la reproducción.
ambos script
y scriptreplay
Los comandos son valiosas herramientas de documentación y los encuentro útiles en dos situaciones:
- No importa cuán sinceramente me prometo a mí mismo que una vez que encuentre la manera correcta de hacer las cosas, revisaré mi historial de shell y recopilaré los comandos correctos, pero rara vez lo hago.
- A veces, mis usuarios no quieren ver la entrada que necesitan; quieren ver Interacción entre ellos y la computadora.Puede decirle al usuario que escriba
ls
Y describa las respuestas que esperan ver, pero tienen un mayor impacto cuando se ven a sí mismos sucediendo. Después de reproducir el archivo de secuencia de comandos para ver cómo se ve primero, encontré que el usuario en la terminal era más valiente.
[ Register for Ansible Basics: Automation Technical Overview and learn configuration management, provisioning, deploying, and managing compute infrastructure across environments with Ansible. ]
Tabla de Contenidos
registra tu terminal
iniciar la grabación script
proporcionando dos archivos de objeto: un archivo de tiempo y un Mecanografiado documento:
$ script --timing=time.tm myscript
La salida te recuerda script
La grabación ha comenzado.todo lo que haces en la terminal mientras script
Se registra activo. Esto incluye todo lo que entra en stdin, stdout y stderr, incluidas sus pausas, retrocesos, autocompletar e incluso sus errores.
de acuerdo a Control+D o entrar exit
Deje de grabar cuando haya terminado con la presentación.
el archivo mecanografiado generado, myscript
En este ejemplo, es sencillo y relativamente autodocumentado:
Script started on 2022-01-06 22:27:01+13:00
0;seth:~/script^G$ echo "hello world"
hello world
0;seth:~/script^G$ exit
exit
Script done on 2022-01-06 22:27:10+13:00
Puede editar este archivo. Pero tenga cuidado de no hacer demasiados cambios ya que también se registra la hora de la salida.
Aún así, para corregir pequeños errores, una edición rápida con un editor de texto es una solución fácil.
guión de reproducción
puedes usarlo scriptreplay
Pedido:
$ scriptreplay --timing=time.tm myscript
Esto se hará cargo de su sesión de terminal y la usará como un lienzo para reproducir su entrada y salida grabada. El tiempo también se replica, por lo que las pausas significativas se conservan para mayor claridad, lo que ayuda a los usuarios a seguir la reproducción del guión.
Por supuesto, el comando reproducido en la terminal no se ejecuta. Esta es solo una reproducción instantánea, por lo que es seguro reproducir scripts que eliminan archivos, realizan confirmaciones de Git o inician la reproducción de Ansible. En realidad, no sucede nada en la reproducción del script. Es solo una película.
Documentación en acción
Esta script
y scriptreplay
Los comandos son una herramienta invaluable para la filosofía de «mostrar, no decir». Ya sea que su público objetivo sea usted en algún momento en el futuro, mucho después de que haya olvidado algo que está seguro de que nunca olvidará, o un nuevo usuario final tímido, ver la interacción humano-computadora puede inspirar y empoderar.
A diferencia de las capturas de pantalla, los archivos mecanografiados son pequeños y fáciles de actualizar y editar. A diferencia de su historial de shell, el mecanografiado no gira. No desaparecerán a menos que los elimine usted mismo. A diferencia de los scripts de shell, TypeScript demuestra los pasos sin ejecutar el procedimiento, alentando al espectador a probar cada paso, interiorizarlo y guardarlo en la memoria, y tener una mejor idea de lo que la terminal es realmente capaz de hacer.