web-dev-qa-db-ja.com

端末とSSHの色を無効にする

私のローカルLinuxマシンは、このように色付けされた端末出力を持っています。

enter image description here

PfSense/BSDボックスにSSH接続すると、色が次のように変わります。

enter image description here

色付きのローカル端末出力のないマシンにSSHで接続し、そこからこのpfSense/FreeBSDボックスにSSHで接続しても、色付きの出力が有効になり、不要な色付きの出力が生成され始めます/

ローカルで変更できるものがあるので、ローカルマシンから、または中間マシンを介してpfSenseボックスにSSHで接続すると、クライアントはリモートカラー設定を無視します。理想的には、白黒、2トーンの標準的な背景とテキストの色のみを使いたいですか?

11
jwbensley

TtyがANSIエンコードされた制御シーケンスを送信して、端末に色を変更するよう指示するため、端末の色が表示されます。ほとんどの端末アプリケーションは、これを無視してすべてのテキストを1色で表示するように構成できます。

xtermでは、-cmオプション。 Konsoleの場合、すべての色のマッピングを同じに変更できます。 XFCE端末アプリケーションにも同様のオプションがある場合があります。

7
gertvdijk

TERM変数を、互換性があるが色のサポートがないいくつかのエントリに変更すると、うまくいく場合があります。お気に入り:

TERM=xterm-old

基本的に、TERM=the-term tput colorsが正の数を返さないFreeBSDシステムのtermcapまたはterminfoデータベースで知られているTERMが必要です。また、GNU lsの場合、dircolors -p | grep -x 'TERM the-term'は何も返しません。端末がカラーエスケープシーケンスをサポートするかどうかに関係なく、カラーエスケープシーケンスを出力するアプリケーションでは機能しない可能性があります。

または、GNU screenを使用して、(zsh構文)のように色を無効にすることもできます。

screen -c =(printf %s\\n "termcapinfo * 'AF=\E[1m:AB=\E[7m'") ssh ...

これは、前景色を設定しようとするたびにboldを有効にし、背景色を設定しようとするたびにreverseを有効にします。

結局のところ、FreeBSDは端末の背景が黒(または少なくとも暗い)であると想定しているということです。 xfce-terminalの代わりにxtermを使用する場合、背景色と前景色、および/または個々の色を動的に変更して、異なるカラープロファイルを設定できます。これはエスケープシーケンスを介して行われますが、xtermcontrolコマンドを使用して簡単にすることもできます。

7

次のコマンドを入力して削除します。

$ ls --color=none

または、unaliasを使用して削除します。

$ unalias ls
2
Len

〜/ .bashrcを変更したくない場合は、export PS2=.....+colors......のようなものが含まれているはずです。

LinuxコンソールでTERM=linux-m1bまたはTERM=linux-m2のいずれかを試して、linux-m1bの場合は「グレー/白/黒と薄暗い」、または「緑/白/黒と青」(ビンテージ!) linux-m2 ...

PuTTY(Macユーザー向けのポートがあります)では、代わりにTERM=PuTTY-m1bおよびTERM=PuTTY-m2を使用してください...

これはあなたが必要とすることを正確に行いますが、そのために最近のterminfoデータベースが必要か、必要に応じてそこから取得します:wget http://canal.chez.com/linux.ti ; tic -x linux.ti

アレックス。 PS:xterm-monoはもう存在していないようです。

1