スクリプトの `^[[032m` など)の不要な出力文字

スクリプトの `^[[032m` など)の不要な出力文字

本番サーバーの出力をローカルシステムにリダイレクトしようとすると、不要な文字があります。^[[032m。実際、これはリダイレクト時に表示されるカラーコードです。リダイレクトせずにサーバー上で同じスクリプトを実行すると、出力の一部がカラー形式で表示されます。

このファイルをメモ帳や他のツールで直接開くと、次のように他の文字が表示されます。

ここに画像の説明を入力してください。

したがって、リダイレクトの前後に発生する問題をスキップできる可能性のある解決策はありますか?

ベストアンサー1

GNU sedがある場合は、それを使用してストリームから脱出する色を削除できます。

somecmd |sed -Ee 's/\x1b\[[0-9;]+m//g'  > outputfile

このsedコマンドは、s///()をエスケープ文字(\x1b)で置き換え、その後に開く角括弧(\[)、任意の桁、またはセミコロン([0-9;]+)を指定してからm何も入れません。

おすすめ記事