私はUnixscript
コマンドを使って端末に出力されたすべてを記録し、それをログファイルに入れます。ところで、録画されたファイルを見るとガベージ文字も含まれています。
それでは、ジャンク文字なしでターミナルアクティビティをどのように記録できますか?
出力例:
ファイルをdosに変換して試しましたが、ファイルtodos
をスキップしました。vim
dos2unix
dos2unix: Skipping binary file
答え1
これらの問題を簡単に削除できるかどうかはわかりません。script
マニュアルページから:
一部の対話型コマンド(vi(1)など)は、TypeScriptファイルにガベージを生成します。スクリプトは画面を操作しないコマンドに最も適しており、結果はハードコピー端末をシミュレートするためのものです。
上記の出力は、端末からカラー出力を生成するエスケープコードと、誰かがスペルミスを修正した後にバックスペースキーを押したように見える出力です。
熱の使用
col
出力をクリーンアップするためにコマンドを使用するSuperUserでこれを見つけました。
$ col -bp typescript | less -R
それでも問題が解決しない場合は、次のバリエーションを試すこともできます。
$ col -bp < typescript
コマンドラインプー
私はこの解決策を見つけましたコマンドライン fu.comPerlとcolの両方を使用します。
$ cat typescript | perl -pe 's/\e([^\[\]]|\[.*?[a-zA-Z]|\].*?\a)//g' \
| col -b > typescript-processed