【发布时间】:2018-07-28 12:30:43
【问题描述】:
我的D:\Documents\WindowsPowerShell\profile.ps1 配置文件中有以下行:
Set-Location $env:HOMEDRIVE
值得注意的是$env:HOMEDRIVE 等于C:。预期的行为是,每当我打开 PS shell 时,我都会被放入 C:,但这不是我得到的,而是被放入 $env:HOMEPATH,等于 C:\Users\<my username here>。
为什么会出现这种行为以及如何“修复”?
关于我的 PS 版本的信息:
PS C:\Users\...> $PSVersionTable
Name Value
---- -----
PSVersion 5.1.14393.2068
PSEdition Desktop
PSCompatibleVersions {1.0, 2.0, 3.0, 4.0...}
BuildVersion 10.0.14393.2068
CLRVersion 4.0.30319.42000
WSManStackVersion 3.0
PSRemotingProtocolVersion 2.3
SerializationVersion 1.1.0.1
【问题讨论】:
-
我无法在 PS 5.1.15063.909 上重现它
-
为什么不使用
cd c:\? -
@gms0ulman 因为 (1) 我想要一些可扩展的东西,
C:不是我所有系统中的HOMEDRIVE,这个profile.ps1用于家庭和工作中的许多系统,即使他们都是C:我永远不会在任何代码中使用静态路径,这只是不好的做法; (2) 我想使用 PS 语法,cd只不过是Set-Location的别名。无论如何,我尝试了cd C:并没有工作......