MS-Windows CMDに示されているようにbashのカラーコマンドはありますか? [繰り返し]

MS-Windows CMDに示されているようにbashのカラーコマンドはありますか? [繰り返し]

cmdMicrosoftにはというコマンドがあります。エコー中にテキストの色を変更できる特殊文字があるcolorことがわかります。bashまた、Ubuntuでは端末のパラメータを編集し、構成で「スタイル」を設定し、メニューの下でマウスを使って編集して適用できることもわかっています。

Debian、Ubuntu、CentOSには、次のような非常に単純なものがあるかどうかを尋ねています。

color 1b

その後、コンソールは次のように起動します。

ここに画像の説明を入力してください。

到着

ここに画像の説明を入力してください。

答え1

これを行う方法はいくつかあります。

1つの方法は、次のものを使用することですtput

tput setab 4背景色を青に設定します。前景色を設定するには、を使用しますtput setaf

別の方法は、生のANSIエスケープを使用することです。ここに良い文書があります。https://misc.flogisoft.com/bash/tip_colors_and_formatting

答え2

setterm次のコマンドを使用できます。

setterm -background blue

または

setterm -ba blue

これは標準のECMA-48制御シーケンスを使用し、実際には多くの(すべてではない)端末エミュレータで動作します。 (マニュアルとは異なり、実際にはこのオプションにterminfoを使用しません。)ECMA-48には次の概念が含まれています。基本色背景と前景の場合は、次のように変更できますdefault

setterm --background default

デフォルトの色を変更するには、次の--storeオプションを追加します(ただし、Linuxカーネルの組み込み端末エミュレータでのみ機能する制御シーケンスを作成します)。

setterm --background red --store

詳しくはこちらをご覧くださいman settermsetterm --help

答え3

同様の端末エミュレータを使用すると、xterm次のことができます。

xtermcontrol --bg blue

blueまたはサポートされているすべての色仕様XParseColor(3x))。

これは実際に\33]11;blue\7シーケンスを送信するため、同じことができます。

printf '\33]11;%s\a' blue

バラよりXTerm制御シーケンス文書のオペレーティングシステムコマンドもっと学ぶ。

関連情報