How to change ONLY the prompt color of the Windows command-line? [duplicate]
As we all know, Windows command-line have the white-black color scheme. And we could use:
COLOR
command to change the colors of background and text.
But the command above will change the whole text in the command-line. E.g. the result of command is as follows:
COLOR 04
But I don't want this kind of color-scheme because that makes no difference with the original white-black one. It is hard to distinguish the command you input and the output of the command. What I want is something like this:
I want the color of command prompt is different with other text on the screen so that I can find the command I input easily. But I only get the solution on Linux. It uses:
export PS1=”\[\e[35;1m\][\u@\h: \W]\$\[\e[0m\] “
So my question is:
How can I change the color of command prompt like the above one on Windows?
Thanks very much.
Solution:
Following the prompt of @Luke I finally get the solution. Anyone who is interested in this topic please hit the two links below:
https://stackoverflow.com/questions/6297072/color-for-the-prompt-just-the-prompt-proper-in-cmd-exe-and-powershell & http://gynvael.coldwind.pl/?id=130
It is "ANSI hack developped for the CMD.exe shell".
Wish that would be helpful for you.
Solution 1:
- Get ANSI color support:
-
NOTE: Current/Updated Windows 10 console already supports ANSI
-
Install ANSICON (source) for ANSI support in legacy windows consoles.
-
Hyper supports ANSI colors.
-
ConEmu supports ANSI colors.
- Setup your command prompt via environment settings...
- Click / press
Start
- type
env
- Click
Edit environment variables for your account
- Edit / Add a
PROMPT
variable
- More information on prompt options
- Scott Hanselman's Blog - A Better PROMPT...
-
Microsoft TechNet - PROMPT
- My own prompt...
$_$E[1;30;40m[$E[0;36;40m%computername% | %userdomain%\%username%$E[1;30;40m] $E[0;33;40m$M$_$E[35;40m$d$s$t$h$h$h$h$h$h$_$E[1;33;40m$p$_$E[1;30;40m$g $E[0;37;40m
-
$E
- escape character -
$E[...m
- ANSI Color Sequence -
$_
- New line -
$d
- Date -
$t
- Time -
$h
- Backspace (get rid of seconds and fractional seconds) -
$p
- Current Path -
$m
- Mount Path (if in a mounted drive) -
$g
- Greater than sign