是否有任何直接的方法(通过使用 cmdlet 或 .NET 类)从给定路径仅获取子文件夹中文件的相对路径?
例如,当前文件夹是C:\MyScript
,并且有一个用文件调用的子文件夹Data
,Test.txt
所以我想查看Data\Test.txt
而不是C:\MyScript\Data\Test.txt
是否有任何直接的方法(通过使用 cmdlet 或 .NET 类)从给定路径仅获取子文件夹中文件的相对路径?
例如,当前文件夹是C:\MyScript
,并且有一个用文件调用的子文件夹Data
,Test.txt
所以我想查看Data\Test.txt
而不是C:\MyScript\Data\Test.txt
该Resolve-Path
cmdlet 有一个-Relative
参数,该参数将返回相对于当前目录的路径:
Set-Location C:\MyScript
$relativePath = Get-Item Data\Test.txt | Resolve-Path -Relative
如果目录不存在,或者基目录应该与当前工作目录不同,则有一个 .NET 方法[IO.Path]::GetRelativePath(String from, String to)
。