PowerShell Memo

このサイトはPowerShell(MSH/Monad)奮闘記です

管理人「newpops吉岡洋」が
「PowerShell(旧名:MSH/Monad)」の研究結果を日々綴っていきます。

【お知らせ】
この日記からPowerShellのTipsを抽出し「PowerShell FAQ」として整理しました。


2005-11-11

[]パスの結合(combine-path)

※「combine-path」はPowerShell 1.0では「Join-Path」という名前に変更されています。

「combine-path」はパスの結合を行うCmdletです。

パスは、ファイル/レジストリの両方に対応可能です。

「combine-path」:ファイルパスの結合

「\」がなくても補完してくれます
MSH C:\> combine-path D: Doc
D:\Doc
MSH C:\> combine-path D:\ Doc\MSH
D:\Doc\MSH
MSH C:\> combine-path D:\ \Doc\MSH
D:\Doc\MSH

「combine-path」:ファイルパスの結合(パスの存在チェック付き)

「-resolve」でパスの存在チェック
MSH C:\> combine-path D:\ \Doc\MSH2 -resolve
combine-path : Cannot find path 'D:\Doc\MSH2' because it does not exist.
At line:1 char:13
+ combine-path  <<<< D:\ \Doc\MSH2 -resolve

「combine-path」:レジストリパスの結合

「\」がなくても補完してくれます
MSH C:\> combine-path HKLM:\ Software
HKLM:\Software
MSH C:\> combine-path HKLM:\ \Software
HKLM:\Software

「combine-path」:レジストリパスの結合(パスの存在チェック付き)

「-resolve」でパスの存在チェック
MSH C:\> combine-path HKLM:\ \Software -resolve
HKLM:\Software
MSH C:\> combine-path HKLM:\ \Software2 -resolve
combine-path : Cannot find path 'HKLM:\Software2' because it does not exist.
At line:1 char:13
+ combine-path  <<<< HKLM:\ \Software2 -resolve