特定のパスからサブフォルダー内のファイルの相対パスのみを取得する (コマンドレットまたは .NET クラスを使用する) 簡単な方法はありますか?
たとえば、現在のフォルダーはfileでC:\MyScript
呼び出されるサブフォルダーがあるため、代わりに表示したいData
Test.txt
Data\Test.txt
C:\MyScript\Data\Test.txt
特定のパスからサブフォルダー内のファイルの相対パスのみを取得する (コマンドレットまたは .NET クラスを使用する) 簡単な方法はありますか?
たとえば、現在のフォルダーはfileでC:\MyScript
呼び出されるサブフォルダーがあるため、代わりに表示したいData
Test.txt
Data\Test.txt
C:\MyScript\Data\Test.txt
Resolve-Path
コマンドレットには-Relative
、現在のディレクトリからの相対パスを返すパラメーターがあります。
Set-Location C:\MyScript
$relativePath = Get-Item Data\Test.txt | Resolve-Path -Relative
ディレクトリが存在しない場合、またはベース ディレクトリが現在の作業ディレクトリとは異なる必要がある場合は、.NET メソッドがあります[IO.Path]::GetRelativePath(String from, String to)
。