ログにAnsiカラーを表示する

ログにAnsiカラーを表示する

Linux端末で

以下のANSII色のログがあります。

03-25 21:01:19.451  8067  8138 I ReactNativeJS: '\u001b[34m', '================================', '\u001b[0m'

ANSIIカラーで表示したいです。

> adb logcat | [magic-to-be-found]  

あるいは、より良い方法はANSIIカラーでフィルタリングして表示したいと思います。

> adb logcat | grep ReactNative | [magic-to-be-found]

尾のある例

  • このコマンドは色を表示しません
>tail adb.log | xargs -i -d '\n' unbuffer echo -e "{}"
04-01 20:21:06.867  5351  5421 I ReactNativeJS: '\u001b[33m', 'opened', '\u001b[0m'
04-01 20:21:07.650  5351  5421 I ReactNativeJS: '\u001b[33m', 'request :', '/AA   PUT', '', '\u001b[0m'
04-01 20:21:09.253  5351  5421 I ReactNativeJS: '\u001b[33m', 'request :', '/bb', '\u001b[0m'
04-01 20:21:16.643  5351  5421 I ReactNativeJS: '\u001b[34m', '================================', '\u001b[0m'
  • そして、行の1つのエコーは正しいANSI色を表示します。
>echo -e "04-01 20:21:16.643  5351  5421 I ReactNativeJS: '\u001b[34m', '================================', '\u001b[0m'"
04-01 20:21:16.643  5351  5421 I ReactNativeJS: '', '================================', ''

答え1

less -Rたとえば、コマンドをパイプで接続します。

tail adb.log | xargs -i -d '\n' unbuffer echo -e "{}" | less -R

望むよりman less

関連情報