コマンドレット ディレクトリの変更

PowerShellのコマンドレットでディレクトリを変更する方法を記載します。

Set-Location -Path C:\×××\×××

エイリアス(コマンドや機能につける別名)として

cd C:\×××\×××

でもディレクトリの変更は可能です。

絶対パスだけでなく、相対パスも使用できます。

Set-Location -Path ..

このコマンドは、現在のディレクトリから1つ上の親ディレクトリに移動します。

パスに空白があるとエラーになる

Set-Location -Path C:\×××\×× ●●\●●●\

パス上に空白などがあると下記のようなエラーが表示されます

Set-Location : 引数 '●●\●●●\' を受け入れる位置指定パラメーターが見つかりません。
発生場所 行:1 文字:1

set-location -path C:\×××\×× ●●\●●●\
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : InvalidArgument: (:) [Set-Location]、ParameterBindingException + FullyQualifiedErrorId : PositionalParameterNotFound,Microsoft.PowerShell.Commands.SetLocationCommand

上記のエラーメッセージは、Set-Locationが引数として指定されたパスを解釈できなかったことを示しています。
エラーの発生は、スペースを含むパス名が正しく処理されていないことが原因です。

スペースを含むパス名が引用符で囲まれていないため、PowerShellは引数としてC:\×××\××と●●\●●●\という2つの別々のパスを解釈しました。
これがエラーの原因です。

引用符を使ってパスを囲むことで、この問題を解決できます。
以下は修正例です。

Set-Location -Path "C:\×××\×× ●●\●●●\"

または

Set-Location -Path 'C:\×××\×× ●●\●●●\'

この記事が気に入ったらサポートをしてみませんか?