`less` が太字出力を表示しないのはなぜですか?

`less` が太字出力を表示しないのはなぜですか?

Windows 上の Putty を使用して、Ubuntu 16.04 サーバー上の bash シェルに接続しています。

Putty で実行すると次のようになりますsudo fdisk -l

太字の fdisk

しかし、出力を にパイプしようとするとless、色が表示されません。

fdisk を less にパイプする

sudo fdisk -l | less -Rと を試してみましたsudo fdisk -l | less -rが、出力が生の出力と同じになることはありません。

出力をless同じようにするにはどうすればいいでしょうか?

答え1

犯人は ではありませlessんが、fdisk多くのプログラムは、ターミナルに印刷するときにのみ出力を色付けし、出力がリダイレクトされるときには色付けしません。これは、一般に、色付けに使用される ESC コードでスクリプトが壊れるのを避けるためです。

しかし、通常これらのプログラムには手動で色付けをオンにするスイッチもあります。

sudo fdisk --color=always -l | less 

代わりに、他のコマンドについてはマニュアルページで調べてください。

関連情報