cheshire-boy

ヘルプ置き場

コマンドレット説明書【Get-Host】の使い方 (PowerShell v5.0)

投稿日:2017年2月7日 更新日:

こんにちは。チェシャ男です。(-皿-)

今回は、Get-Hostについて概要から使用例について簡単にご紹介します。

コマンドレットリファレンス」カテゴリの記事では省略している情報を参照したい場合に本記事をご覧ください。

スポンサーリンク

はじめに

本記事は英語のリファレンス情報しかないコマンドレットについて「Get-Help」等の情報を参考に検証した結果を掲載しています。公式見解ではないことにご注意ください。

正式なヘルプを参照したい場合は、「Get-help Get-Host -online」を実行し公式ヘルプをご覧ください。

また、本記事内の例は動作を確認していますが、動作を確約しているわけではありません。

Get-Hostの概要

Get-Hostでは、実行中のPowerShellのホストとなるプログラムについて情報を取得します。(バージョンや地域情報など)

【Get-Host/$PSVersiontable】PowerShellのバージョンを確認する方法とは?

基本の構文

[]で囲まれたパラメーターは任意のオプションです。

動作の説明

Get-Hostコマンドレットでは、PowerShellのホストとなっているプログラム(のオブジェクト)情報を取得します。デフォルトでは、Windows PowerShellの「バージョン番号」やホストが使用中の「地域と言語」の設定が表示されています。

Get-Hostで取得できるホストに関する情報の中には、

・実行中のWindows PowerShellのバージョン

・Windows PowerShellの現在のカルチャとUIカルチャに関する詳細

など豊富な情報が含まれています。

カルチャとは.NET Frameworkにおいて

使用される言語

数値・日時・通貨などの書式

年号・暦

といったロケールに関する情報の事です。

さらに、Get-Hostコマンドレットを使用してコンソール画面のユーザーインターフェイスの機能(テキストや背景色など)をカスタマイズすることもできます。

各パラメータについて

<CommonParameters>

このコマンドレットは、

Verbose、debug、ErrorAction、ErrorVariable、WarningAction、WarningVariable、OutBuffer、PipelineVariable、OutVariable

の各共通パラメーターを使用することができます。

入力値

なし

(入力をこのコマンドレットにパイプすることはできません。)

出力

System.Management.Automation.Internal.Host.InternalHost

備考

$Hostの自動変数には、Get-Hostの戻り値と同じオブジェクトが格納されています。$HostでGet-Hostを代替することができます。

同様に、$PSCultureおよび$PSUICulture自動変数には、Get-Hostの戻り値となるオブジェクトの「CurrentCulture」および「CurrentUICulture」プロパティと同じ情報が格納されています。

使用例

例1:PowerShellコンソールホストに関する情報を取得する

この例では、現在実行中のPowerShellホストのコンソールに関する情報を表示します。

ホスト名、のPowerShellのバージョン、現在のカルチャとUIされています。

「Version」「UI」「CurrentCulture」「CurrentUICulture」「PrivateData」「Runspace」といった各プロパティには、便利なプロパティを持ったオブジェクトが格納されています。

例2:PowerShellウィンドウのサイズを変更する

この例では、PowerShellコンソールのウィンドウサイズを30 x 60ピクセルに変更しています。

実行するとコンソールウィンドウの大きさが突然変わるので驚かないよう注意してください。 笑

同様の手法を用いることで、PowerShellコンソールのウィンドウのタイトルバーの表示も変えることができるようです!

例3:PowerShellバージョンを取得する

この例では、実行されているPowerShellのバージョンに関する情報の詳細を取得します。(これらの値は表示できますが変更することはできません。)

Get-Hostで取得できるオブジェクトのVersionプロパティには、「System.Version」オブジェクトが格納されています。

また、パイプライン演算子(|)を使用して、System.VersionオブジェクトをFormat-Listコマンドレットに渡しています。Propertyパラメータに「” * ”(すべての値)」を指定して、System.Versionオブジェクトのプロパティについて全ての情報を表示しています。

例4:現在のカルチャを取得する

この例では、実行されているPowerShellのカルチャに関する詳細情報を取得しています。Get-Cultureコマンドレットによって取得できる結果と同じ情報が含まれています。

CurrentCultureプロパティには、「System.Globalization.CultureInfo」オブジェクトが格納されています。

ちなみに、CurrentUICultureプロパティには、Get-UICultureコマンドレットによって取得できる結果と同じ情報が含まれています。

例5:現在のカルチャのDateTimeFormatを取得する

この例では、現在のカルチャにおける「DateTimeFormat」プロパティに関する詳細情報を取得しています。Get-Hostで取得できるオブジェクトの「CurrentCulture」プロパティには「CultureInfo」オブジェクトが含まれいて、このオブジェクトには有用なプロパティが多く含まれています。

その中で、DateTimeFormatプロパティには、多くの便利なプロパティを持つDateTimeFormatInfoオブジェクトが含まれています。

オブジェクトに格納されているプロパティの種類は、Get-Memberコマンドレットを使用することでを調べることができます。

例6:ホストのRawUIプロパティを取得する

この例では、実行中のPowerShellコンソールの「RawUI」プロパティについての情報を表示しています。

例1のように、これらの値を変更することでコンソールウィンドウの色や大きさなどを変更することができます。

例7:PowerShellコンソールの背景色を設定する

この例では、PowerShellコンソールの背景色を変更しています。また、clsコマンド(Clear-Hostのエイリアス)で画面を一旦クリアして、画面全体を新しい色に変更しています。

この変更は実行中のセッションでのみ有効です。 すべてのセッションでコンソールの背景色を変更するには、PowerShellのプロファイル($PROFILE)にコマンドを追加します。

例8:エラーメッセージの背景色を設定する

この例では、エラーメッセージの背景色を変更しています。今回はGet-Hostと同じオブジェクト情報を含む$Host自動変数を使用しています。

ErrorBackgroundColorを変更するために、$Hostの「PrivateData」プロパティを使用します。「$Host.PrivateData」プロパティのオブジェクトについて表示するには、「$Host.PrivateData | Format-List *」を実行します。

スポンサーリンク

スポンサーリンク

-ヘルプ置き場
-, , ,

Copyright© 【チェシャわら】PowerShellとは、から学ぶ入門者の教科書-脱コマンドプロンプト- , 2017 AllRights Reserved Powered by micata2.