はじめに
今回はPowerShellでのパス操作の方法について説明します。
対象読者
Windows PowerShellの基本操作が行える方。過去に入門記事を連載していますので、併せて参照ください。
パス操作を行うコマンドレット
PowerShellでパス操作を行うコマンドレットは下記のものがあります。
コマンドレット | エイリアス | 説明 |
Convert-Path | cvpa | 相対パスを絶対パスに変換します。 |
Join-Path | なし | パスを結合します。 |
Resolve-Path | rvpa | パスに含まれるワイルドカードを展開する。 |
Split-Path | なし | 指定されたパスを分割する。 |
Test-Path | なし | パスの存在を確認する。 |
相対パスを絶対パスに変換する
パス変換の基本
パスの変換を行うには、Convert-Pathコマンドレットを使用します。エイリアスはcvpaです。
Convert-Pathコマンドレットは、パラメータとして指定された相対パスを絶対パスを表す文字列に変換します。また、パスを変換する際に指定されたパスが存在するかをチェックし、存在しない場合にはエラーメッセージを表示します。
基本構文は下記の通りです。
Convert-Path 変換するパス
カレントディレクトリを絶対パスに変換する
カレントディレクトリを絶対パスに変換するには下記のように、ドット(.)を指定します。
PS> Convert-Path .
親ディレクトリを絶対パスに変換する
親ディレクトリを絶対パスに変換するには下記のように、ドット(.)を2つ並べて指定します。
PS> Convert-Path ..
ワイルドカードを含むパスを絶対パスに変換する
変換するパスにワイルドカードが含まれている場合には、存在するパスの中から一致するパスを探し出して返します。
たとえば下記は「C:\Pro*」を指定すると、「C:\Program Files」が返されます(使用する環境によって返される値は異なります)。
PS> Convert-Path C:\Pro*
指定されたワイルドカードに該当するパスが複数存在する場合は、一致するものすべてを返します。
PS> Convert-Path C:\Work*