PowerShell 技能连载 - 理解 PowerShell 和文件系统
PowerShell 维护着它自己的位置:
1 | PS> Get-Location |
当前路径指向所有 cmdlet 使用的相对路径。
1 | PS> Get-Location |
还有另一个当前路径,是由 Windows 维护的,影响所有 .NET 方法。它可能 PowerShell 的当前路径不同:
1 | PS> [Environment]::CurrentDirectory |
所以如果在脚本中使用跟文件系统有关的 .NET 方法,可能需要先同步两个路径。这行代码确保 .NET 使用和 PowerShell 相同的文件系统路径:
1 | PS> [Environment]::CurrentDirectory = $ExecutionContext.SessionState.Path.CurrentFileSystemLocation |
同步之后,cmdlet 和 .NET 方法在同一个路径上工作:
1 | PS> [Environment]::CurrentDirectory = $ExecutionContext.SessionState.Path.CurrentFileSystemLocation |
PowerShell 技能连载 - 理解 PowerShell 和文件系统
http://blog.vichamp.com/2017/07/20/understanding-powershell-and-system-paths/