
我在 gnu screen 中運行了一些命令,並使用該C-a H
命令將輸出記錄到screenlog.0
檔案中。不過現在我想看看。有大量的終端轉義序列,因此只需cat
-ing 即可立即顯示所有內容。
我知道這個文件中沒有時間信息,這很好。但是否有可能以某種方式增量地回覆文件?一次一個字元/轉義序列?是否有任何命令可以獲取這樣的文件,並且在我按下按鈕/允許我前進時一次只“打印”一個字符/轉義序列?
更新:如果我使用less
或more
,我可以查看文件並查看內容,但這會顯示原始內容,包括控製程式碼。如果我輸入了一半命令並按下tab,它會顯示 tab 鍵。所以我無法複製/貼上
答案1
less
您可以使用類似或 的尋呼機more
:
less screenlog.0
或者
more screenlog.0
不確定您有什麼終端轉義碼,但如果它們未正確顯示,請使用
less -R screenlog.0
答案2
這是一個簡單的 POC Bash 腳本來重播,同時可以透過按, , ...screenlog.0
來更改重播速度,其中 0 表示全速。按下可暫停/恢復。019space
exec 6< screenlog.0
sleep=2 # initial speed where 2 means 0.2s pauses between "lines"
while read -r line <&6 ; do
printf '%b\n' "$line"
read -s -N 1 -t .$sleep
case "$REPLY" in [0-9]) sleep="$REPLY";; " ") read -s -d " ";; esac
done