tty 端末出力をプレーンテキストに変換

tty 端末出力をプレーンテキストに変換

実行中のWindowsコンソールアプリケーションのテキスト出力をキャプチャしたいですwineconsole --backend=curses ...

アプリ自体は退屈なstdioを使用しています。残念ながら、ワインは出力を大幅にエスケープするため、ファイルにリダイレクトするのに役に立ちません。

wineconsole環境変数を使用します。たとえば、またはを設定すると、TERM若干異なる動作をします。TERM=vt100TERM=linux

TERM画面をまったく消去する必要のない非常に基本的な方法を探していると思います。

あるいは、ttyをエミュレートして出力をプレーンテキストに変換するツールです。

答え1

設定を試すことができますTERM=dumbwineconsole全画面にこだわらない場合でも動作できます。

それ以外の場合は、前述のように、scriptこれが回避策の一部です。これにより、画面に送信されたテキストファイルのすべてのデータを透過的に収集するプログラムを実行できます。

それを理解するのが残りの解決策です。wineconsole左から右へ/上から下に簡単に書き込むと、エスケープ文字(色付き)をフィルタリングして便利なプレーンテキストを取得できます。画面を飛び回ったり、テーブルを表示したりするなどの操作を行うと、これをうまく実行できません。しかし、出口イベントを(部分的に)フィルタリングすることは、通常何もしないよりも優れています。

エスケープシーケンスフィルタリングのトピックは時々発生します。Unixユーティリティを使用してプログラムでANSI制御コードをファイルに「書き込み」できますか?

追加資料:

関連情報