Provides color highlighting for some basic PowerShell output. It currently rewrites "Out-Default" to colorize:
- FileInfo & DirectoryInfo objects (Get-ChildItem, dir, ls etc.)
- ServiceController objects (Get-Service)
- MatchInfo objects (Select-String etc.)
The easiest way to install, by far, is to use PsGet. Once PsGet is installed you can simply run Install-Module PSColor.
Alternativly, you can download the file PSColor.zip and extract it to a folder named PSColor in any of your PowerShell module paths. (Run $env:PSModulePath to see your paths.)
If you want PSColor to be ran automatically you can add Import-Module PSColor to your PowerShell Profile. To locate your profile, run $profile
You can configure PSColor by overriding the values of colors, patterns etc. Configurations should be added after Import-Module PSColor in your PowerShell profile. The default configuration looks like:
$global:PSColor=@{
File=@{
Default=@{ Color='White' }
Directory=@{ Color='Cyan'}
Hidden=@{ Color='DarkGray'; Pattern='^\.' } Code=@{ Color='Magenta'; Pattern='\.(java|c|cpp|cs|js|css|html)$' }
Executable=@{ Color='Red'; Pattern='\.(exe|bat|cmd|py|pl|ps1|psm1|vbs|rb|reg)$' }
Text=@{ Color='Yellow'; Pattern='\.(txt|cfg|conf|ini|csv|log|config|xml|yml|md|markdown)$' }
Compressed=@{ Color='Green'; Pattern='\.(zip|tar|gz|rar|jar|war)$' }
}
Service=@{
Default=@{ Color='White' }
Running=@{ Color='DarkGreen' }
Stopped=@{ Color='DarkRed' } }
Match=@{
Default=@{ Color='White' }
Path=@{ Color='Cyan'}
LineNumber=@{ Color='Yellow' }
Line=@{ Color='White' }
}
NoMatch=@{
Default=@{ Color='White' }
Path=@{ Color='Cyan'}
LineNumber=@{ Color='Yellow' }
Line=@{ Color='White' }
}
}E.g. if you would like to override the red color for Executables, in favour of blue; you could add the following to your PowerShell profile:
$global:PSColor.File.Executable.Color='Blue'