script(1)
対話型端末セッションの記録を保持するためのツールです。デフォルトでは、ファイルに書き込みますtranscript
。私の問題は、ksh93
readline 機能を備えた を使用しているため、トランスクリプトがあらゆる種類の端末エスケープ シーケンスでごちゃごちゃになってしまい、実際に実行されたコマンドを再構築することが非常に困難になる可能性があることです。迷子などは言うまでもありません^M
。
script
によって書かれたトランスクリプトファイルを読み取り、すべてのジャンクを削除し、シェルが実行していると考えていたものを再構築するツールを探しているので、表示されるものと$PS1
実際に実行されたコマンドがあります。それができない場合は、そのようなツールを作成する方法についての提案を探しています。理想的には、terminfo データベースの知識を使用するか、そうでない場合は ANSI エスケープ シーケンスを使用するだけです。
本当に機能する限り、シェルの履歴を参照するチートも許容されます。