[ad_1]
コード プロジェクト コミュニティの皆様、こんにちは。
バッチ スクリプトで、(echo を使用して) 特定の行を特定の色で印刷しようとしていますが、それを試みると、コマンド プロンプト全体がその特定の色に変わります。 コマンドウィンドウ全体の色を変更せずに、特定の行を異なる色で印刷する方法は?
注意: 0A = 緑、0C = 赤
私が試したこと:
私のコード:
@echo off color 0A echo This is GREEN COLOR color 0C echo This is Red Color
出力:(パスとファイル名を含むすべてのものを赤色で印刷/変更します)
C:\Users>test.bat This is GREEN COLOR This is Red Color<
解決策 1
ここで答えを見てください: バッチファイル – Windowsコマンドラインで異なる色でエコーする方法[^]
回答のコードを使用しないでください。ただし、ここから: https://gist.githubusercontent.com/mlocati/fdabcaeb8071d5c75a2d51712db24011/raw/b710612d6320df7e146508094e84b92b34c77d48/win10colors.cmd[^]
解決策 2
color コマンドは、コマンド ウィンドウ全体の前景色と背景色を変更します。 行ごとに色を変更したい場合は、ANSI エスケープ シーケンスを使用する必要があります。 見出しのセクションを参照してください 表示属性の設定 で ANSI/VT100 端末制御[^].
解決策 3
ファイル: msg.bat:
@エコーオフ
:コル
>%2 (set/p=.) <&1
検索文字列 /a:%1 。 %2 con &erase %2
for /f “delims=” %%a in (‘cmd /k prompt $h$h ^<^&1') do echo %%a
終了 /b
ファイル: your_script.bat:
@エコーオフ
タイトルテスト
call msg.bat 0A “text here (引用符を忘れないでください)”
::「call」コマンドはウィンドウを閉じないために必要です msg.bat を終了します 「0A」は色 end 「ここにテキスト (引用符を忘れないでください)」は画面に書き込むテキストです
call msg.bat 9F “text here (引用符を忘れないでください)”
一時停止
[ad_2]
コメント