トピック about_Locations 簡易説明 Windows PowerShell の作業場所から項目にアクセスする方法について説明します。 詳細説明 現在の作業場所とは、コマンドが指す既定の場所のことです。つまり、項目のパスや コマンドの動作対象となる場所をユーザーが明示的に指定しない場合に、Windows PowerShell によって自動的に使用される場所です。ほとんどの場合、Windows PowerShell FileSystem プロバイダーを使用してアクセスするドライブが現在の作業場所になりますが、 そのドライブ上のディレクトリになることもあります。たとえば、現在の作業場所を次の 場所に設定するとします。 C:\Program Files\Windows PowerShell そうすると、別のパスを明示的に指定しない限り、すべてのコマンドがこの場所から処理されます。 そのドライブを現在使用していなくても、Windows PowerShell には各ドライブの現在の作業場所が保 持されています。そのため、別の場所のドライブを参照するだけで、現在の作業場所から項目にアクセ スできます。たとえば、現在の作業場所が C:\Windows であるとします。ここで、次のコマンドを使用して、 現在の作業場所を HKLM: ドライブに変更します。 Set-Location HKLM: 現在の場所はレジストリ ドライブになっていますが、ユーザーは C: ドライブを使用するだけで C:\Windows ディレクトリの項目に引き続きアクセスできます。次に例を示します。 Get-ChildItem C: Windows PowerShell では、そのドライブの現在の作業場所が Windows ディレクトリであるこ とが記憶されているので、そのディレクトリから項目が取得されます。次のコマンドを使用 しても同じ結果が得られます。 Get-ChildItem C:\Windows Windows PowerShell では、Get-Location コマンドを使用して現在の作業場所を判断できま す。また、Set-Location コマンドを使用すると、現在の作業場所を設定できます。たとえば、 次のコマンドでは、現在の作業場所が C: ドライブの Windows ディレクトリに設定されます。 Set-Location c:\windows 現在の作業場所を設定しても、コマンド内に (最後にコロンを付けた) ドライブ名を含めるだけで別 のドライブの項目に引き続きアクセスできます。次に例を示します。 Get-ChildItem HKLM :\software この例のコマンドでは、レジストリにある HKEY Local Machine ハイブの Software コンテナーの項 目の一覧が取得されます。 Windows PowerShell では、特殊文字を使用して現在の作業場所とその親の場所を表すこともでき ます。現在の作業場所を表すには、ピリオド 1 つを使用します。現在の作業場所の親を表すには、ピ リオド 2 つを使用します。たとえば、次のコマンドでは、現在の作業場所にある System という名前 のサブディレクトリを指定しています。 Get-ChildItem .\system 現在の作業場所が C:\Windows の場合にこのコマンドを実行すると、C:\Windows\System にあるすべ ての項目の一覧が返されます。ただし、ピリオド 2 つを使用すると、現在の作業ディレクトリの親デ ィレクトリが使用されます。次に例を示します。 Get-ChildItem ..\"program files" この場合、Windows PowerShell では、ピリオド 2 つは C: ドライブとして扱われるため、このコマ ンドを実行すると C:\Program Files ディレクトリにあるすべての項目が返されます。 バックスラッシュで始まるパスは、現在のドライブのルートからのパスを示しています。たとえば、 現在の作業場所が C:\Program Files\Windows PowerShell である場合、ドライブのルートは C になり ます。そのため、次のコマンドを実行すると C:\Windows ディレクトリのすべての項目の一覧が表示さ れます。 Get-ChildItem \windows コンテナーや項目の名前を指定するときに、ドライブ名、バックスラッシュ、またはピリオドで始まる パスを指定しないと、現在の作業場所にコンテナーや項目があるものと仮定されます。たとえば、現在の 作業場所が C:\Windows である場合に、次のコマンドを実行すると C:\Windows\System ディレクトリに あるすべての項目が返されます。 Get-ChildItem system ディレクトリ名ではなくファイル名を指定すると、そのファイルの詳細が返されます (そのファイル が現在の作業場所にあると仮定されます)。 関連項目 Set-Location about_Providers about_Path_Syntax