Windows PowerShell セッション状態
セッション状態とは、セッションまたはモジュールの現在Windows PowerShellを指します。 セッションWindows PowerShellは、コマンド ライン ユーザーが対話的に使用するか、ホスト アプリケーションによってプログラムによって使用される運用環境です。 セッションのセッション状態は、グローバル セッション状態と呼ばれます。
開発者の観点から見ると、Windows PowerShell セッションとは、ホスト アプリケーションが Windows PowerShell 実行空間を開いてから実行空間を閉じる時間を指します。 別の方法で見て、セッションは、実行空間が存在している間に呼び出される Windows PowerShell エンジンのインスタンスの有効期間です。
モジュール セッションの状態
モジュール セッションの状態は、モジュールまたは入れ子になったモジュールの 1 つがセッションにインポートされるたびに作成されます。 モジュールがコマンドレット、関数、スクリプトなどの要素をエクスポートすると、その要素への参照がセッションのグローバル セッション状態に追加されます。 ただし、要素が実行されると、モジュールのセッション状態内で実行されます。
Session-State データ
セッション状態データは、パブリックまたはプライベートにできます。 パブリック データはセッション状態の外部からの呼び出しで使用できます。プライベート データはセッション状態内からの呼び出しでのみ使用できます。 たとえば、モジュールは、モジュールによってのみ呼び出したり、エクスポートされたパブリック要素によってのみ内部的に呼び出したりできるプライベート関数を持つ場合があります。 これは、 型のプライベート メンバーとパブリック メンバー.NET Framework似ています。
セッション状態データは、現在のセッションのコンテキスト内の実行エンジンの現在のインスタンスWindows PowerShellされます。 セッション状態データは、次の項目で構成されます。
パス情報
ドライブ情報
Windows PowerShellプロバイダー情報
インポートされたモジュールに関する情報と、モジュールによってエクスポートされるモジュール要素 (コマンドレット、関数、スクリプトなど) への参照。 この情報とこれらの参照は、グローバル セッション状態のみを目的とします。
セッション状態変数の情報
コマンドレット内Session-Stateデータへのアクセス
コマンドレットは、コマンドレット クラスの System.Management.Automation.PSCmdlet.Sessionstate* プロパティを介して間接的に、または System.Management.Automation.Sessionstate クラスを介して直接、セッション状態データにアクセスできます。 System.Management.Automation.Sessionstateクラスは、さまざまな種類のセッション状態データを調査するために使用できるプロパティを提供します。
参照
System.Management.Automation.PSCmdlet.Sessionstate
System.Management.Automation.Sessionstate?Displayproperty=Fullname
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示