xtermで "watch"を使用して "systemd"コマンドを実行してカラー出力を取得するにはどうすればよいですか?

xtermで "watch"を使用して "systemd"コマンドを実行してカラー出力を取得するにはどうすればよいですか?

どういうわけかカラー出力として機能させることはできません。動作しますが、色は表示されません。


  1. 私は現在シェルaliasで以下を使用していますbash
    alias Xterm='xterm -geometry 132x60 +dc +cm -e '
    alias Watch='watch --color --differences --interval=1 --exec '
    alias xterm-watch='Xterm Watch '
    alias _nc='networkctl'
    alias nc-status='_nc --no-pager --stats --full status'
    alias nc-status-watch='xterm-watch nc-status'
    
  2. $TERMに設定されていますxterm-256color
  3. nc-status-watchbashプロンプトに入力すると、xtermコマンドとwatchコマンドを実行するための引数を含むウィンドウが正しく表示されます。networkctlただし、出力に色は表示されません。

nc-status-watchの結果

xterm内でsystemd実行されるコマンドのカラー出力をどのように取得できますか?watch

答え1

@muruさんのコメントのおかげで、いよいよカラー出力が出ました。

次の変更が必要です。

alias Xterm='SYSTEMD_COLORS=1 xterm -geometry 132x60 -e '

関連情報