コマンドプロンプト、カスタマイズしてますか?
デフォルトの「黒窓」
普段からCUI環境に慣れてる人なら、Windowsのコマンドプロンプトをよく使う方も多いのではないでしょうか。皆さんのイメージするコマンドプロンプトって、こんな画面ですよね?
気分を変えたいときは
たまには、背景色や文字色を変えてみたい!というときは、右クリックして、こんな風にRGB指定して設定しますよね?
でもコレ、面倒臭くない?
でも、いちいち背景色と文字色を変えるのにそれぞれにRGB値を入力するの、面倒臭くないですか?例えば、自分が変更したい色のカラーコードを知らなかったり16進数表記に慣れていていちいち10進数表記に変換するのが面倒臭かったり・・・。せっかくCUI環境使ってるんだから、コマンドで色を変えられないの・・・?
実はコマンドで色を指定できます!
colorコマンドの使い方
コマンドプロンプトで、
C:\>color ?
と打ってみましょう。すると、colorコマンドの使い方の説明が表示されます。
colorの後に半角スペースを空けて、背景色・文字色をそれぞれ1桁の16進数で指定することができます。大文字・小文字は問いません。例えば、背景色を「灰色」、文字色を「輝く白」にしたい場合は、
C:\>color 8f
と打てば、
こんなイメージになります。しかし「輝く白」って表現、何なんでしょうね(笑)
Windows10のデフォルト配色はこんな感じ
実際にWindows10のcolorコマンドに割り当てられている16色はこんな感じです。
派手に「背景色:赤、文字色:明るい黄色」でやりたい!って場合は、
C:\>color 4e
既に右クリックでカスタマイズしていると・・・?
ところが、右クリックで既に設定を変更してしまっている場合は・・・?!
例えば、こんな配色にカスタマイズしてしまっていたとします。
とりあえずcolorコマンドの用法を聞いてみる
C:\>color ?
すると、やはり先ほどと同じ説明が返ってきます。
0からFまで、全く同じ説明ですね。
じゃあ、本当にそうなんだな!?
この説明を信じて「背景色:緑(2)、文字色:白(7)」にしてみましょう。
C:\>color 27
すると、なんと・・・!!
「背景色:黄色、文字色:青」になってしまったではないか!!!
コマンドプロンプトが嘘をついた!!
はい、コマンドプロンプト側は、ユーザーが右クリックでどのようにカラーパレットを設定したかなんて完全無視。色設定を変えたのに、説明では最初と同じ色が割り当てられてるなんて、おかしいですよね?
colorコマンドが返すのはあくまで16進数に割り当てられた色
たとえば、こんな配色に設定していたとすると、
colorコマンドで入力した16進数の位置に設定されている色を返してくるのです。
C:\>color ?
ではいつも同じコトしか言わないのに、配色をカスタマイズしても、そこにどんな色を設定したかなんて、見ていないのです!やっぱり、コマンドプロンプトは、嘘つきですね!
今日はエイプリルフールです。
投稿日すなわち今日、2021年4月1日(木)は、エイプリルフールです。人間だけじゃなく、コンピュータだって嘘をつきたいでしょう。そこで、実際にコンピュータにエイプリルフール当日に嘘をつかせてみたのです。如何だったでしょうか。面白かった!という方は是非LGTMをお願いします!!
2023年3月20日(月)追記
Windows11になっても、説明は全く同じですが、色調が微妙に変わったようです。
こんな感じです。