record terminal with script
This commit is contained in:
71
vision/record_terminal.md
Normal file
71
vision/record_terminal.md
Normal file
@@ -0,0 +1,71 @@
|
||||
---
|
||||
title: "Record a Terminal Session"
|
||||
tags: [ "vision", "share" ]
|
||||
---
|
||||
|
||||
Record a terminal command, then press 'Control + d' to exit.
|
||||
|
||||
```sh
|
||||
script --timing=time.log stat.txt
|
||||
ls -a
|
||||
ls -al
|
||||
stat ~/.bashrc
|
||||
^D
|
||||
```
|
||||
|
||||
Replay the session:
|
||||
|
||||
```sh
|
||||
scriptreplay --timing=time.log stat.txt
|
||||
```
|
||||
|
||||
Try a bare command, without any timing:
|
||||
|
||||
```sh
|
||||
script -c 'top | lolcat' loltop
|
||||
nl loltop
|
||||
```
|
||||
|
||||
Has your terminal messed up?
|
||||
Is the cursor hiding?
|
||||
Reset it!
|
||||
|
||||
```sh
|
||||
reset
|
||||
```
|
||||
If you can't see any keys, keep typing anyway: have faith in your terminal.
|
||||
|
||||
This `loltop` file will not play properly as it has no timings file.
|
||||
But you can cheat the system and use your other timings file:
|
||||
|
||||
```sh
|
||||
scriptreplay --timing=time.log loltop
|
||||
```
|
||||
|
||||
This will mostly not work well, but it shows how the timing file works:
|
||||
|
||||
|
||||
```text
|
||||
0.033401 23
|
||||
0.044513 8
|
||||
0.000016 219
|
||||
1.349324 114
|
||||
0.179106 1
|
||||
0.088790 1
|
||||
0.072821 1
|
||||
0.358337 2
|
||||
0.000254 9
|
||||
0.004720 52
|
||||
0.000084 21
|
||||
0.155462 671
|
||||
```
|
||||
|
||||
I think it works like this?
|
||||
|
||||
| How long it took | to type *n* characters |
|
||||
|:----------------:|:----------------------:|
|
||||
| 0.033401 | 23 |
|
||||
| 0.044513 | 8 |
|
||||
| 0.000016 | 219 |
|
||||
| 1.349324 | 114 |
|
||||
|
||||
Reference in New Issue
Block a user