次の方法で共有


Push-Location

現在の場所を場所スタックの上部に追加します。

構文

Path (既定)

Push-Location
    [[-Path] <String>]
    [-PassThru]
    [-StackName <String>]
    [-UseTransaction]
    [<CommonParameters>]

LiteralPath

Push-Location
    [-LiteralPath <String>]
    [-PassThru]
    [-StackName <String>]
    [-UseTransaction]
    [<CommonParameters>]

説明

Push-Location コマンドレットは、現在の場所を場所スタックに追加 ("プッシュ") します。 パスを指定した場合、Push-Location は現在の場所を場所スタックにプッシュし、現在の場所をパスで指定された場所に変更します。 Pop-Location コマンドレットを使用して、場所スタックから場所を取得できます。

既定では、 Push-Location コマンドレットは現在の場所を現在の場所スタックにプッシュしますが、StackName パラメーターを使用して別の場所スタックを指定できます。 スタックが存在しない場合は、Push-Location 作成します。

場所スタックの詳細については、「メモ」を参照してください。

例 1

次の使用例は、現在の場所を既定の場所スタックにプッシュし、場所を C:\Windowsに変更します。

PS C:\> Push-Location C:\Windows

例 2

次の使用例は、現在の場所を RegFunction スタックにプッシュし、現在の場所を HKLM:\Software\Policies の場所に変更します。

PS C:\> Push-Location HKLM:\Software\Policies -StackName RegFunction

任意の PowerShell ドライブ (PSDrive) で Location コマンドレットを使用できます。

例 3

このコマンドは、現在の場所を既定のスタックにプッシュします。 場所は変更されません。

PS C:\> Push-Location

例 4 - 名前付きスタックを作成して使用する

これらのコマンドは、名前付き場所スタックを作成して使用する方法を示しています。

PS C:\> Push-Location ~ -StackName Stack2
PS C:\Users\User01> Pop-Location -StackName Stack2
PS C:\>

最初のコマンドは、現在の場所を Stack2 という名前の新しいスタックにプッシュし、次に現在の場所をホーム ディレクトリに変更します。ホーム ディレクトリは、コマンド内でチルダ記号 (~) で表されます ( $env:USERPROFILE$HOME と同じ)。

セッションに Stack2 がまだ存在しない場合は、Push-Location 作成されます。 2 番目のコマンドでは、 Pop-Location コマンドレットを使用して、Stack2 スタックから元の場所 (PS C:\>) をポップします。 StackName パラメーターを指定しない場合、 Pop-Location は名前のない既定のスタックから場所をポップします。

ロケーション スタックの詳細については、Notesを参照してください。

パラメーター

-LiteralPath

新しい場所へのパスを指定します。 Path パラメーターとは異なり、LiteralPath パラメーターの値は、型指定されたとおりに使用されます。 ワイルドカードとして解釈される文字はありません。 パスにエスケープ文字が含まれている場合は、単一引用符で囲みます。 単一引用符は、文字をエスケープ シーケンスとして解釈しないように Windows PowerShell に指示します。

パラメーターのプロパティ

型:String
規定値:None
ワイルドカードのサポート:False
DontShow:False
Aliases:PSPath

パラメーター セット

LiteralPath
配置:Named
必須:False
パイプラインからの値:False
プロパティ名別のパイプラインからの値:True
残りの引数からの値:False

-PassThru

場所を表すオブジェクトをパイプラインに渡します。 既定では、このコマンドレットは出力を生成しません。

パラメーターのプロパティ

型:SwitchParameter
規定値:False
ワイルドカードのサポート:False
DontShow:False

パラメーター セット

(All)
配置:Named
必須:False
パイプラインからの値:False
プロパティ名別のパイプラインからの値:False
残りの引数からの値:False

-Path

現在の場所をスタックの一番上に追加 (プッシュ) した後、このパスで指定された場所に場所を変更します。 プロバイダーがこのコマンドレットをサポートしている任意の場所へのパスを入力します。 ワイルドカードを使用できます。 パラメーター名は省略可能です。

パラメーターのプロパティ

型:String
規定値:None
ワイルドカードのサポート:True
DontShow:False

パラメーター セット

Path
配置:1
必須:False
パイプラインからの値:True
プロパティ名別のパイプラインからの値:True
残りの引数からの値:False

-StackName

現在の場所を追加する場所スタックを指定します。 場所スタック名を入力します。 スタックが存在しない場合は、Push-Location 作成します。

このパラメーターを指定しない場合、Push-Location は現在の場所スタックに場所を追加します。 既定では、現在の場所スタックは、PowerShell によって作成される名前のない既定の場所スタックです。 場所スタックを現在の場所スタックにするには、Set-Location コマンドレットの StackName パラメーターを使用します。 ロケーション スタックの詳細については、Notesを参照してください。

Push-Location は、現在の場所スタックでない限り、名前のない既定のスタックに場所を追加できません。

パラメーターのプロパティ

型:String
規定値:Default stack
ワイルドカードのサポート:False
DontShow:False

パラメーター セット

(All)
配置:Named
必須:False
パイプラインからの値:False
プロパティ名別のパイプラインからの値:True
残りの引数からの値:False

-UseTransaction

アクティブなトランザクションにコマンドを含みます。 このパラメーターは、トランザクションが進行中の場合にのみ有効です。 詳細については、about_Transactionsを参照してください。

パラメーターのプロパティ

型:SwitchParameter
規定値:False
ワイルドカードのサポート:False
DontShow:False
Aliases:usetx

パラメーター セット

(All)
配置:Named
必須:False
パイプラインからの値:False
プロパティ名別のパイプラインからの値:False
残りの引数からの値:False

CommonParameters

このコマンドレットでは、一般的なパラメーター -Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction、-WarningVariable の各パラメーターがサポートされています。 詳細については、about_CommonParametersを参照してください。

入力

String

パス (リテラル パスではない) を含む文字列を Push-Location にパイプ処理できます。

出力

None or System.Management.Automation.PathInfo

PassThru パラメーターを使用すると、 Push-Location は場所を表す System.Management.Automation.PathInfo オブジェクトを生成します。 それ以外の場合、このコマンドレットは出力を生成しません。

メモ

「スタック」は、最後に追加されたアイテムのみにアクセスできる後入れ先出しのリストです。 アイテムを使用する順序でスタックに追加し、逆の順序で使用するためにアイテムを取得します。 PowerShell を使用すると、プロバイダーの場所を場所スタックに格納できます。

PowerShell では、名前のない既定の場所スタックが作成され、複数の名前付き場所スタックを作成できます。 スタック名を指定しない場合、Windows PowerShell は現在の場所のスタックを使用します。 既定では、名前のない既定の場所は現在の場所スタックですが、Set-Location コマンドレットを使用して現在の場所スタックを変更できます。

場所スタックを管理するには、次のように PowerShell Location コマンドレットを使用します。

  • 場所スタックに場所を追加するには、Push-Location コマンドレットを使用します。
  • 場所スタックから場所を取得するには、Pop-Location コマンドレットを使用します。
  • 現在の場所スタックの場所を表示するには、 コマンドレットの Get-Location パラメーターを使用します。

名前付き場所スタックに場所を表示するには、 コマンドレットの Get-Location パラメーターを使用します。

  • 新しい場所スタックを作成するには、Push-Location コマンドレットの StackName パラメーターを使用します。 存在しないスタックを指定した場合は、スタック Push-Location 作成されます。
  • 場所スタックを現在の場所スタックにするには、Set-Location コマンドレットの StackName パラメーターを使用します。

名前のない既定の場所スタックは、現在の場所スタックである場合にのみ完全にアクセスできます。 名前付きの場所スタックを現在の場所スタックにすると、 Push-Location または Pop-Location コマンドレットを使用して既定のスタックから項目を追加または取得したり、 Get-Location コマンドを使用して名前のないスタック内の場所を表示したりすることはできなくなります。 名前のないスタックを現在のスタックにするには、 Set-Location コマンドレットの StackName パラメーターを $null の値または空の文字列 ("") と共に使用します。

また、組み込みのエイリアス、Push-Locationpushd を参照することもできます。 詳細については、about_Aliasesを参照してください。

Push-Location コマンドレットは、任意のプロバイダーによって公開されるデータを操作するように設計されています。 セッションで使用可能なプロバイダーを一覧表示するには、「Get-PSProvider」と入力します。 詳細については、about_Providersを参照してください。