質問
ディスプレイ色を使用するコマンドはいくつかありますが、それらを使用すると、色が消えます。
watch -n 1 node file.js
何らかの形で色を元に戻すことは可能ですか?
解決
他のヒント
使ってはいけません watch
... Watchプログラムを使用すると、端末に書き込まないことを検出してから、色を剥がします。特定のプログラムフラグを使用して、コントロールコードをそこに保持する必要があります。
旗がわからない場合、または貧しい男に監視させることができない場合は、
while sleep <time>; do clear; <command>; done
ちょっとしたフリッカーがあります(「ダブルバッファリング」という時計)がありますが、いくつかのものでは十分に役立ちます。
あなたは二重に緩衝された貧しい男の時計を使って作るように誘惑されるかもしれません
while sleep <time>; do <command> > /tmp/file; clear; cat /tmp/file; done
しかし、その後、「私はターミナルに書いていない」機能に再びヒットします。
基本的な、飾り気のない操作を複製できます watch
シェルスクリプトの数行で。
$ cat cheapwatch
#!/bin/sh
# Not quite your Rolex
while true ; do
clear
printf "[%s] Output of %s:\n" "$(date)" "$*"
# "$@" <- we don't want to do it this way, just this:
${SHELL-/bin/sh} -c "$*"
sleep 1 # genuine Quartz movement
done
$ ./cheapwatch ls --color # no problem
最終的に、非常に賢い人がハッキングします tr
制御文字をストリップするこのスクリプトにコマンドし、ユーザーに使用を強制します --color
そのロジックを無効にする。とりあえず、この実装の純粋な素朴さは、色を食べるモンスターを遠ざけていることです。
あなたが状況にある場合 watch
ありません --color
オプションで、何らかの理由でパッケージをアップグレードすることはできません。おそらくこれを投入することができます。
はい
色の出力で動作するのを見る。これは(少なくともDebianでは)Procpsパッケージの一部です。ここにあなたの質問のためのバグレポートがあります http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=129334彼らが答える場所、あなたはProcpsパッケージを更新する必要があること
たとえば、ubuntu 11.04では、このパッケージは機能します http://packages.debian.org/wheezy/procps
tl; dr
procpsを更新します
時計マニュアルから:
非印刷文字は、プログラムの出力から剥奪されます。それらを見たい場合は、コマンドパイプラインの一部として「CAT -V」を使用してください。
しかし、私はそれをどのように使用するかわかりません。