Windows 环境变量何时为 HOMEPATH=\

Windows 环境变量何时为 HOMEPATH=\
set HOME
HOMEDRIVE=C:
HOMEPATH=\
USERDOMAIN=user01
USERNAME=user01
USERPROFILE=C:\Documents and Settings\user01

Microsoft Windows XP [Version 5.1.2600]

在我测试过的 Windows 机器上,USERPROFILE=%HOMEDRIVE%%HOMEPATH%

当我最初决定采用时HOMEDRIVE/HOMEPATH,我读到一篇文章说这是最安全的方式。

什么原因会HOMEPATH导致/

如果需要在这台机器上执行命令,请将它们以批处理文件的形式放进去。谢谢。

答案1

HOMEPATH 可以设置为 %USERPROFILE% 或 %HOMEDRIVE% 的根目录。对于在现代版本的 Windows(XP/Vista)上的 DOS/CMD 上编写的脚本,您应该使用 %USERPROFILE%。

也就是说,如果您正在编写应用程序(或 vbs 等),请从 Windows 获取 shell 文件夹列表,因为它(通常)比 %userprofile% 更准确/可靠。

答案2

我发现这USERPROFILE并不等同于%HOMEDRIVE%%HOMEPATH%

简而言之:

  1. 对于漫游配置文件:HOMEPATH 是漫游位置,USERPROFILE 是本地位置(请参阅git-wrapper.c
  2. 例如,当您使用辅助登录时run as,HOMEDRIVE、HOMEPATH 将不会刷新,并且 HOMEPATH 将始终\Windows\system32为每个用户(参见含义变量-homedrive-homepath为什么会发生这种情况)

阅读完整的上下文检查问题适用于 Windows 的 git#2709

编辑:我发现\当你使用网络配置文件时,HOPMEPATH 将会像你在如何在 Windows XP 中更改 HomeDrive HomePath 和 HomeShare

相关内容