J'ai configuré git pour exécuter un script powershell pendant les fusions. J'utilise Git Bash sur Windows pour les commandes git. La fonction Write-Host de Powershell sort du texte sur la console Bash, mais l'utilisation du drapeau -ForegroundColor ne change pas la couleur du texte. Existe-t-il un moyen pour le script de Powershell de définir la couleur de sa sortie dans la console Bash ?
Réponse
Trop de publicités?Tout d'abord.
L'utilisation de Write-Host est un sujet très débattu depuis longtemps. Même par l'inventeur inventeur / auteur de PowerShell.
Write-Host considéré comme nuisible - par le fondateur de PowerShell Jeffrey Snover
https://jsnover.com/blog/2013/12/07/write-host-considered-harmful
Lorsque vous écrivez ou révisez des scripts PowerShell, j'aimerais que vous vous rappeliez la règle de base suivante :
Utiliser Write-Host est presque toujours une erreur.
Write-Host est presque toujours la mauvaise chose à faire parce qu'il interfère avec l'automatisation. Il y a généralement deux raisons pour lesquelles les gens utilisent Write-Host :
Il existe de nombreux autres articles sur le sujet.
Dans les versions antérieures de PoSH, Write-Host ne pouvait pas être utilisé en pipeline, car le moment où vous l'utilisez les données ont disparu du buffer.
Cependant, dans PoSHv5 Jeffrey Snover dit maintenant ...
Avec PowerShell v5, Write-Host ne "tue plus les chiots". Les données sont capturées dans un flux d'informations
Description
La cmdlet Write-Information spécifie la façon dont Windows PowerShell traite les informations suivantes les données du flux d'informations pour une commande.
Windows PowerShell 5.0 introduit un nouveau flux d'informations structuré (numéro 6 dans les flux Windows PowerShell) que vous pouvez utiliser pour transmettre des des données structurées entre un script et ses appelants (ou l'hôte d'hébergement). Write-Information vous permet d'ajouter un message d'information au flux, et de spécifier comment Windows PowerShell traite les données du flux d'informations pour une commande. données du flux pour une commande.
Texte colorisé à l'écran pour l'interaction avec l'utilisateur - même cela peut être être contourné facilement.
Write-Verbose a une couleur bleue Write-Warning a une couleur orange
Vous pouvez toujours utiliser les couleurs, sans utiliser Write-Host, en faisant ceci ...
PowerTip : Ecrire la sortie PowerShell en couleur sans utiliser Write-Host
Résumé : écrire une sortie colorée dans la console Windows PowerShell sans utiliser la cmdlet Write-Host.
Deuxièmement, vous ne précisez pas non plus quel éditeur / console vous utilisez. powershell.exe/powershell_ise.exe ou autre chose, disons VSCode.
Maintenant, je dois vous dire que je n'ai pas essayé ceci dans Bash. Pourtant, sans passer le temps supplémentaire de configurer PoSH pour l'intégration de Bash...
Configuration de l'ISE PowerShell pour une utilisation avec Git et GitHub
Le but de cet article de blog est de configurer l'ISE PowerShell (Integrated Scripting Environment) afin que la gestion du contrôle de version Git puisse être effectuée à partir de celui-ci. La plupart des tutoriels que vous trouverez d'utiliser SSH au lieu de HTTPS pour gérer le contrôle de version de Git. synchroniser vos dépôts vers GitHub à partir de la ligne de commande mais mais c'est vraiment trop compliqué et inutile si vous utilisez un système de gestion des versions de machine sous Windows.
http://mikefrobbins.com/2016/02/09/configuring-the-powershell-ise-for-use-with-git-and-github
...alors, le terminal Bash et la console PoSH sont deux environnements différents. Si vous dites, que vous utilisez la commande Bash dans un PoSH script et que vous redirigez la sortie vers le terminal Bash, alors je comprends, mais, en dehors de l'utilisation de Write-Host qui est erronée dans la plupart des cas, lorsque PoSH envoie la sortie vers quelque chose d'autre, alors c'est la destination qui contrôle l'apparence, pas PowerShell.
Même lors de l'utilisation de PoSH WinForm / WPF, les zones de texte à partir de PoSH peuvent être envoyées, mais vous devez utiliser les propriétés à partir de PoSH pour définir les couleurs.
Quoi qu'il en soit, il y a plusieurs discussions sur la couleur dans GIT Bash avec PowerShell. Voyez si elles peuvent vous aider.
Utiliser Git depuis PowerShell
Personnaliser votre environnement Git
Il se peut que vous souhaitiez personnaliser certains des paramètres de votre Git surtout s'il s'agit d'une nouvelle installation de Git. Être un bon contributeur de projet dans Git, vous devez vous identifier afin que Git sache qui blâmer pour vos commits. Aussi, j'ai trouvé que la valeur par défaut couleurs utilisées par Git dans le commits pouvaient être difficiles à lire. J'ai donc personnalisé les couleurs pour les rendre plus visibles. Pour plus d'informations, voir la Personnalisation de Git dans la documentation de Git.
Les commandes suivantes ne doivent être exécutées qu'une seule fois. Vous définissez préférences globales. Ainsi, une fois définies, elles sont utilisées chaque fois que vous démarrez un nouveau Shell.
https://seanonit.wordpress.com/2016/12/05/using-git-from-powershell
Configuration des couleurs pour ls dans git bash sous Windows
J'ai récemment installé GitHub pour Windows et j'utilise l'invite git bash. La seule chose qui me dérange en ce moment est que lorsque je tape LS tous les répertoires sont listés en bleu.
Comment puis-je modifier mon Shell de git bash de façon à ce que lorsque je tape LS la commande répertoires soient listés dans une couleur différente du bleu ?
https://stackoverflow.com/questions/14049896/setting-colors-for-ls-in-git-bash-on-Windows
Comment changer le jeu de couleurs dans bash sur Ubuntu pour Windows ?
J'ai essayé de créer des schémas de couleurs avec https://terminal.sexy et http://ciembor.github.io/4bit/ mais je n'arrive pas à faire en sorte qu'une de leurs exportations fonctionner avec bash sous Ubuntu et Windows.
Quelle est l'approche correcte pour personnaliser les couleurs dans boUoW ?
Comment changer le jeu de couleurs dans bash sur Ubuntu pour Windows ?