PowerShell Provider - Environment
 記事記号:[me1506] 初版:2011/May/10

この文書は、Windows PowerShellのヘルプ機能で表示される内容を再構成したものです。


プロバイダー名
    Environment
    
ドライブ
    Env:
    
概要
    Windows 環境変数へのアクセスを提供します。
    
説明
    Windows PowerShell 環境プロバイダーを使用すると、Windows PowerShell で Windo
    ws 環境変数を取得、追加、変更、クリア、および削除できます。
    
    環境プロバイダーは、環境変数を表すオブジェクトのみを含むフラットな名前空間で
    す。変数には子の項目がありません。
    
    各環境変数は System.Collections.DictionaryEntry クラスのインスタンスです。環
    境変数の名前はディクショナリ キーです。環境変数の値はディクショナリ値です。
    
    環境プロバイダーは、Env: ドライブにデータ ストアを公開します。環境変数を操作
    するには、場所を Env: ドライブに変更するか ("set-location env:")、別の Window
    s PowerShell ドライブから作業します。別の場所から環境変数を参照するには、パス
    でドライブ名 "Env:" を指定します。
    
    環境変数プロバイダーは、Invoke-Item を除き、名前に Item という名詞が含まれる
    すべてのコマンドレットをサポートします。また、Get-Content および Set-Content 
    コマンドレットもサポートします。ただし、ItemProperty という名詞を含むコマンド
    レット、およびあらゆるコマンドレットの Filter パラメーターはサポートされませ
    ん。
    
    環境変数は、通常の名前付けの標準に従って命名する必要があります。また、名前に
    等号 (=) を使用することができません。
    
    環境変数を変更した場合、その変更は現在のセッションにのみ影響します。変更を保
    存するには、変更を Windows PowerShell プロファイルに追加するか、Export-Conso
    le を使用して現在のセッションを保存します。
    
機能
    
タスク
    タスク: Env: ドライブに移動する
        
        -------------------------- 例 1 --------------------------
        
        次のコマンドは、現在の場所を Env: ドライブに変更します。
        
        set-location env:
        
        
        このコマンドは、Windows PowerShell の任意のドライブから使用できます。フ
        ァイル システム ドライブに戻るには、そのドライブ名を入力します。たとえば、
        次のように入力します。
        
            set-location c:
        
    タスク: 環境変数を取得する
        
        -------------------------- 例 1 --------------------------
        
        このコマンドは、現在のセッションのすべての環境変数を一覧表示します。
        
        get-childitem -path env:
        
        このコマンドは、Windows PowerShell の任意のドライブから使用できます。
        -------------------------- 例 2 --------------------------
        
        次のコマンドは、WINDIR 環境変数を取得します。
        
        get-childitem -path env:windir
        
        -------------------------- 例 3 --------------------------
        
        このコマンドは、現在のセッションのすべての環境変数の一覧を取得し、名前順
        に並べ替えます。
        
        get-childitem  | sort-object -property name
        
        
        既定では、環境変数は Windows PowerShell で検出された順序で表示されます。
        このコマンドは、Env: ドライブで実行されています。
        
        このコマンドを別のドライブから実行する場合は、値 Env: を設定した Path パ
        ラメーターを追加します。
        
    タスク: 新しい環境変数を作成する
        
        -------------------------- 例 1 --------------------------
        
        次のコマンドは、USERMODE 環境変数を作成し、Non-Admin という値を設定します。
        
        new-item -path . -name USERMODE -value Non-Admin
        
        
        現在の場所は Env: ドライブであるため、Path パラメーターの値はドット (.) 
        です。ドット (.) は、現在の場所を表します。
        
        Env: ドライブ以外から使用する場合、Path パラメーターには Env: を指定する
        ことになります。
        
    タスク: 環境変数のプロパティとメソッドを表示する
        
        -------------------------- 例 1 --------------------------
        
        次のコマンドは、Get-ChildItem コマンドレットを使用してすべての環境変数を
        取得します。
        
        get-childitem -path env: | get-member
        
        
        結果がパイプライン演算子 (|) によって Get-Member に渡され、オブジェクト
        のメソッドとプロパティが表示されます。
        
        パイプを使用してオブジェクトのコレクション (Env: ドライブの環境変数のコ
        レクションなど) を Get-Member に渡すと、Get-Member はコレクション内の各
        オブジェクトを個別に評価します。次に、Get-Member は、検出した各オブジェ
        クトの型に関する情報を返します。すべてのオブジェクトが同じ型である場合は、
        その型に関する情報を返します。この例では、すべての環境変数が DictionaryE
        ntry オブジェクトです。
        
        DictionaryEntry オブジェクトのコレクションに関する情報を取得するには、Ge
        t-Member の InputObject パラメーターを使用します。たとえば、次のように入
        力します。
        
            get-member -inputobject (get-childitem env:)
        
        InputObject パラメーターが使用された場合、Get-Member はコレクション内のオ
        ブジェクトではなく、コレクションを評価します。
        -------------------------- 例 2 --------------------------
        
        次のコマンドは、WINDIR 環境変数のプロパティの値を一覧表示します。
        
        get-item env:windir | format-list -property *
        
        
        Get-Item コマンドレットを使用して、"windir" 環境変数を表すオブジェクトを
        取得します。その結果は、パイプライン演算子 (|) によって Format-List コマ
        ンドに渡されます。このコマンドは、ワイルドカード文字 (*) が指定された Pr
        operty パラメーターを使用して、WINDIR 環境変数のすべてのプロパティの値を
        書式設定し、表示します。
        
    タスク: 環境変数のプロパティを変更する
        
        -------------------------- 例 1 --------------------------
        
        このコマンドは、Rename-Item コマンドレットを使用して、作成済みの USERMOD
        E 環境変数の名前を USERROLE に変更します。
        
        rename-item -path env:USERMODE -newname USERROLE
        
        
        この変更は、DictionaryEntry オブジェクトの Name、Key、および PSPath プロ
        パティに影響します。
        
        システムが使用する環境変数の名前は変更しないでください。変更は現在のセッ
        ションでのみ有効ですが、システムまたはプログラムの不適切な動作の原因とな
        る可能性があります。
        -------------------------- 例 2 --------------------------
        
        このコマンドは、Set-Item コマンドレットを使用して、環境変数 USERROLE の
        値を Administrator に変更します。
        
        set-item -path env:USERROLE -value Administrator
        
    タスク: 環境変数をコピーする
        
        -------------------------- 例 1 --------------------------
        
        次のコマンドは、USERROLE 環境変数の値を USERROLE2 環境変数にコピーします。
        
        copy-item -path env:USERROLE -destination env:USERROLE2
        
    タスク: 環境変数を削除する
        
        -------------------------- 例 1 --------------------------
        
        次のコマンドは、USERROLE2 環境変数を現在のセッションから削除します。
        
        remove-item -path env:USERROLE2
        
        
        このコマンドは、Windows PowerShell の任意のドライブで使用できます。Env: 
        ドライブから使用する場合は、パス内のドライブ名を省略できます。
        -------------------------- 例 2 --------------------------
        
        次のコマンドは、USERROLE 環境変数を削除します。
        
        clear-item -path env:USERROLE
        
動的パラメーター
    
メモ
    環境プロバイダーは動的パラメーターをサポートしません。

関連するリンク
    about_Providers 

	
記事で解説しているパソコンの環境
 基本ソフト: Windows 7
 キーワード: Windows PowerShell、ヘルプ、Provider、Environment
ご利用数: 1918571
感想・要望・問い合わせは こちら