about_Locations
簡単な説明
PowerShell で作業場所からアイテムにアクセスする方法について説明します。
詳細な説明
現在の作業場所 は、コマンドが指す既定の場所です。 つまり、これは、コマンドの影響を受ける項目または場所への明示的なパスを指定しない場合に PowerShell で使用される場所です。
Note
PowerShell では、プロセスごとに複数の実行空間がサポートされます。 各実行空間には、独自 の現在のディレクトリがあります。 これは、PowerShell プロセス [System.Environment]::CurrentDirectory
の現在のディレクトリと同じではありません。
たとえば、現在の作業場所を次の場所に設定できます。
Set-Location C:\Program Files\Windows PowerShell
その結果、別のパスが明示的に指定されていない限り、すべてのコマンドはこの場所から処理されます。
PowerShell メインドライブが現在のドライブでない場合でも、各ドライブの現在の作業場所が含まれます。 これにより、別の場所のドライブのみを参照して、現在の作業場所から項目にアクセスできます。
たとえば、現在の作業場所が C:\Windows
. 次に、次のコマンドを使用して、現在の作業場所をドライブに HKLM:
変更するとします。
Set-Location HKLM:
現在の場所はレジストリ ドライブになりましたが、次の例に示すように、ドライブを C:\Windows
使用して C:
ディレクトリ内の項目に引き続きアクセスできます。
Get-ChildItem C:
PowerShell は、そのドライブの現在の作業場所が Windows ディレクトリであることを記憶しているため、そのディレクトリから項目を取得します。 次のコマンドを実行した場合、結果は同じになります。
Get-ChildItem C:\Windows
PowerShell では、このコマンドを Get-Location
使用して現在の作業場所を特定し、コマンドを Set-Location
使用して現在の作業場所を設定できます。 たとえば、次のコマンドは、現在の作業場所を Windows
ドライブのディレクトリに C:
設定します。
Set-Location C:\Windows
現在の作業場所を設定した後も、次の例に示すように、コマンドにドライブ名 (コロンが続く) を含めることで、他のドライブの項目にアクセスできます。
Get-ChildItem HKLM:\software
このコマンド例では、レジストリ内のハイブのソフトウェア コンテナー内の項目の HKEY_LOCAL_MACHINE
一覧を取得します。
PowerShell では、特殊文字を使用して、現在の作業場所とその親の場所を表すこともできます。 現在の作業場所を表すには、1 つの期間を使用します。 現在の作業場所の親を表すには、2 つの期間を使用します。 たとえば、次の例では、現在の System
作業場所のサブディレクトリを指定します。
Get-ChildItem .\System
現在の作業場所の場合、このコマンドは C:\Windows
次のすべての項目 C:\Windows\System
の一覧を返します。 ただし、2 つの期間を使用する場合は、次の例に示すように、現在の作業ディレクトリの親ディレクトリが使用されます。
Get-ChildItem ..\"Program Files"
この場合、PowerShell は 2 つの期間を C: ドライブとして扱うので、コマンドはディレクトリ内のすべての項目を C:\Program Files
取得します。
円記号 (\
) で始まるパスは、現在のドライブのルートからのパスを識別します。 たとえば、現在の作業場所が C:\Program Files\PowerShell
〗の場合、ドライブのルートは C:\
. したがって、次のコマンドはディレクトリ内のすべての項目を C:\Windows
一覧表示します。
Get-ChildItem \Windows
コンテナーまたは項目の名前を指定するときに、ドライブ名、円記号 (\
)、またはピリオド (.
) で始まるパスを指定しない場合、コンテナーまたは項目は現在の作業場所にあると見なされます。 たとえば、現在の作業場所が存在する場合、次のコマンドは C:\Windows
ディレクトリ内のすべての項目を C:\Windows\System
返します。
Get-ChildItem System
ディレクトリ名ではなくファイル名を指定した場合、PowerShell はそのファイルに関する詳細を返します (ファイルが現在の作業場所にあると仮定)。
関連項目
PowerShell