As coisas importantes primeiro.
O uso do Write-Host é um tópico muito debatido há muito tempo. Mesmo pelo inventor / autor do PowerShell.
O host de gravação é considerado prejudicial - pelo fundador do PowerShell, Jeffrey Snover
https://jsnover.com/blog/2013/12/07/write-host-considered-harmful
Ao escrever ou revisar scripts do PowerShell, lembre-se da seguinte regra geral:
Usar o Write-Host quase sempre está errado.
Write-Host é quase sempre a coisa errada a se fazer, porque interfere na automação. Normalmente, existem dois motivos pelos quais as pessoas usam o Host de Gravação:
Existem muitos outros artigos sobre o assunto.
Nas versões anteriores do PoSH, o Write-Host não podia ser usado no pipeline, pois no momento em que você o utiliza, os dados desaparecem do buffer.
No entanto, no PoSHv5, Jeffrey Snover agora diz ...
Com o PowerShell v5 Write-Host, não "mata mais filhotes". os dados são capturados no fluxo de informações
https://docs.microsoft.com/en-us/powershell/module/Microsoft.PowerShell.Utility/Write-Information?view=powershell-5.1
Descrição
O cmdlet Write-Information especifica como o Windows PowerShell lida com dados do fluxo de informações de um comando.
O Windows PowerShell 5.0 apresenta um novo fluxo de informações estruturadas (número 6 nos fluxos do Windows PowerShell) que você pode usar para transmitir dados estruturados entre um script e seus chamadores (ou ambiente de hospedagem). Write-Information permite adicionar uma mensagem informativa ao fluxo e especificar como o Windows PowerShell manipula os dados do fluxo de informações de um comando.
Texto colorido na tela para interação com o usuário - mesmo que possa ser contornado com facilidade.
Write-Verbose tem uma cor azul Write-Warning tem uma cor laranja
Você ainda pode usar cores, sem usar o Write-Host, fazendo isso ...
Dica: Escreva a saída do PowerShell em cores sem usar o host de gravação
https://blogs.technet.microsoft.com/heyscriptingguy/2012/10/11/powertip-write-powershell-output-in-color-without-write-host
Resumo: grave a saída colorida no console do Windows PowerShell sem usar o cmdlet Write-Host.
Em segundo lugar, você também não indica qual editor / console está usando. powershell.exe / powershell_ise.exe ou outra coisa, digamos VSCode.
Agora, divulgação completa: não tentei isso no Bash. No entanto, sem gastar o tempo extra configurando o PoSH para a integração do Bash ...
Configurando o PowerShell ISE para uso com Git e GitHub
O objetivo deste artigo de blog é configurar o PowerShell ISE (Integrated Scripting Environment) para que o gerenciamento do controle de versão do Git possa ser executado a partir dele. A maioria dos tutoriais que você encontrará tentará levá-lo ao caminho do uso do SSH em vez do HTTPS para sincronizar seus repositórios com o GitHub a partir da linha de comando, mas isso é realmente muito complicado e desnecessário se você estiver usando uma máquina baseada no Windows.
http://mikefrobbins.com/2016/02/09/configuring-the-powershell-ise-for-use-with-git-and-github
... então, o terminal bash e o console PoSH são dois ambientes diferentes. Se você está dizendo que está usando o comando Bash em um script PoSH e está redirecionando a saída para o terminal Bash, entendo isso, mas, fora do uso do Write-Host, na maioria dos casos, o erro está errado quando o PoSH envia a saída para outra coisa, então é o destino que controla a aparência, não o PowerShell.
Mesmo usando PoSH WinForm / WPF, as caixas de texto podem ser enviadas de PoSH, mas você deve usar as propriedades from para definir cores.
De qualquer forma, existem várias discussões sobre cores no GIT Bash com PowerShell. Veja se isso ajuda mais.
Usando o Git do PowerShell
Personalize seu ambiente Git
Você pode personalizar algumas das configurações do seu ambiente Git, especialmente se esta for uma nova instalação do Git. Sendo um bom colaborador do projeto no Git, você deve se identificar para que o Git saiba a quem culpar por seus commits. Além disso, descobri que as cores padrão usadas pelo Git no shell podem ser difíceis de ler. Então, eu personalizei as cores para torná-las mais visíveis. Para obter mais informações, consulte o tópico Personalizando o Git na documentação do Git.
Os seguintes comandos precisam ser executados apenas uma vez. Você está configurando preferências globais para que, uma vez definidas, elas sejam usadas sempre que você iniciar um novo shell.
https://seanonit.wordpress.com/2016/12/05/using-git-from-powershell
Configurando cores para sl no git bash no windows
Instalei recentemente o GitHub para Windows e estou usando o prompt do git bash - a única coisa que está me incomodando agora é quando eu digito LS todos os diretórios estão listados em azul.
Como altero meu shell git bash para que, quando digito LS, os diretórios sejam listados em uma cor diferente para azul?
https://stackoverflow.com/questions/14049896/setting-colors-for-ls-in-git-bash-on-windows
Como você altera o esquema de cores no bash no Ubuntu para Windows?
Tentei criar esquemas de cores com https://terminal.sexy e
http://ciembor.github.io/4bit/, mas não consigo fazer com que nenhuma de suas exportações funcione com o bash no Ubuntu no Windows.
Qual é a abordagem correta para personalizar as cores no boUoW?
Como você altera o esquema de cores no bash no Ubuntu para Windows?