タイトルが示すように、PowerShell スクリプトからのコンソール出力をカラーで表示するにはどうすればよいでしょうか? GoCD の v16.12 を使用しています。
編集: 会社のポリシーにより、書き込みホストの使用は許可されていません。理由は聞かないでください:)
タイトルが示すように、PowerShell スクリプトからのコンソール出力をカラーで表示するにはどうすればよいでしょうか? GoCD の v16.12 を使用しています。
編集: 会社のポリシーにより、書き込みホストの使用は許可されていません。理由は聞かないでください:)
これらの色をより簡単に処理する方法が必要な場合は、私が作成したモジュールである TMOutput モジュールをインストールして使用できます。System.Console を使用します。ただし、それはあなたの側のコーディングが少なくて済みます。
これに関する投稿へのリンクは次のとおりです: http://tommymaynard.com/script-sharing-write-output-gets-foreground-and-background-colors-and-more-2016/。そのページには、Microsoft の PowerShell ギャラリーのモジュールへのリンクがあります。PowerShellGet を使用している場合は、次のコマンドを使用してダウンロードしてインストールできます。
Install-Module -Name TMOutput
編集: モジュールが行うもう 1 つのことは、必要な色を配置する前の状態に色をリセットすることです。[System.Console] を自分で使用するだけの場合は、自分で行う必要があります。
これは任意Write-Host
ではありませんが、要件を満たす可能性のある別のオプションです。
$Host.UI.Write('Cyan','DarkMagenta','Text to display')
オーバーロード:
void Write(string value)
void Write(System.ConsoleColor foregroundColor, System.ConsoleColor backgroundColor, string value)
また、直接関係はありませんが、要件が実際に PSScriptAnalyzer の規則を満たす必要がある場合Write-Host
は、動詞Show
(例: Show-GoCDOutput
) を使用する関数で任意のコマンドをラップでき、PSScriptAnalyzer はそれをスキップすることに注意してください。