LoginSignup
0
0

More than 1 year has passed since last update.

自分メモ:バッチで文字の色を変える

Posted at

はじめに

バッチファイルのEchoで文字の色を変える方法が分かりましたので自分メモ

環境

Microsoft Windows [Version 10.0.19043.1348]
(2021年11月25日時点)

わかる方への簡単な説明

エスケープシーケンスを使用して文字色を変更しています。
やり方としてEscコード(\x1b)を直接ソースに埋め込みます。

サンプル

image.png

ソース

test.bat
@echo off

echo STYLE
echo Reset    [0m
echo Bold     [1mTrue[0m
echo Inverse  [7mTrue[0m
echo Underline[4mTrue[0m

echo Black    [30mTrue[0m
echo Red      [31mTrue[0m
echo Green    [32mTrue[0m
echo Yellow   [33mTrue[0m
echo Blue     [34mTrue[0m
echo Magenta  [35mTrue[0m
echo Cyan     [36mTrue[0m
echo White    [37mTrue[0m

echo Black    [40mTrue[0m
echo Red      [41mTrue[0m
echo Green    [42mTrue[0m
echo Yellow   [43mTrue[0m
echo Blue     [44mTrue[0m
echo Magenta  [45mTrue[0m
echo Cyan     [46mTrue[0m
echo White    [47mTrue[0m

echo Black    [90mTrue[0m
echo Red      [91mTrue[0m
echo Green    [92mTrue[0m
echo Yellow   [93mTrue[0m
echo Blue     [94mTrue[0m
echo Magenta  [95mTrue[0m
echo Cyan     [96mTrue[0m
echo White    [97mTrue[0m

echo Black    [100mTrue[0m
echo Red      [101mTrue[0m
echo Green    [102mTrue[0m
echo Yellow   [103mTrue[0m
echo Blue     [104mTrue[0m
echo Magenta  [105mTrue[0m
echo Cyan     [106mTrue[0m
echo White    [107mTrue[0m

ソース解説

上記のソースをコピペしても実現しません。
ちょっと工夫する必要があります。

image.png

カーソル位置の文字コードを見ていただくと、\x1bとなっていることが確認できると思います。
つまり、エディタなどで直接\x1bを埋め込むことで実現できます。

サクラエディタの場合のやり方としては、仮の文字列を置換する方法が考えられます。
仮文字として"ESC"を置き、置換で"\x1b"に置換します。
image.png

0
0
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0