答案1
如果我理解你的问题没有错的话——
您需要的命令是“SETX”,而不是 SET。“SETX”将普遍设置环境变量。或者,您也可以通过 GUI 使用控制面板 > 系统 > 高级系统设置 > 环境变量来设置环境变量。
对于您想要执行的操作,您可以使用如下命令:
SETX HP %USERPROFILE%
然后(在未来的命令窗口中,而不是当前的命令窗口中)HP 将等于 %USERPROFILE% 的位置,在 Windows 7 中通常是 C:\USERS\。
那么将来你就可以使用了CD %HP%
。
==========
或者,您可以创建符号链接;但是,符号链接将指向特定位置。例如,您可以使用
MKLINK /D HP C:\USERS\WOJ
然后命令CD HP
会带你到 C:\USERS\WOJ
此方法的问题在于您必须位于保存符号链接的目录中才能引用它。
您遇到的限制是 Windows 如何处理别名。您可以使用 DOSKEY 轻松地在 Windows 中为命令设置别名,但位置不能以类似的方式设置别名,尽管它们是通过环境变量(系统和用户特定)引用的。环境变量要求您使用分隔符 % 符号进行替换。
答案2
正如其他发帖者所说,“~”是 *nix 的东西。据我所知,Windows 没有类似的约定。
可以使用“set”命令在命令提示符中设置路径命令,但我认为这也不是您想要的。它的作用是为命令提示符提供执行命令时要检查的位置列表。假设您输入“pkunzip”,它会查看“PATHS”中指定的所有路径以查找可执行文件。它现在实际上已经不怎么用了,更像是 DOS 的东西。
但是......您仍然可以将其用作快捷方式......
如果你做了类似的事情
set somepath=c:\somefolder\somefolder
然后当你想引用它时你可以这样做
dir %somepath%
您可以在命令提示符下键入“set”来设置所有“set”环境变量的列表。
这有帮助吗?也许我不明白你的问题。