cla*_*ser 134 windows windows-vista command-line
我习惯使用
cd ~
Run Code Online (Sandbox Code Playgroud)
直接进入我的主目录。在 Windows 命令提示符下我必须做
cd Users\username
Run Code Online (Sandbox Code Playgroud)
到那里。有没有像 Linux 这样的快捷方式?如果我能通过这样做到达那里就好了
cd username
Run Code Online (Sandbox Code Playgroud)
在 Windows Vista 中可能有这样的事情吗?
sle*_*ske 198
是的,您可以使用%HOMEPATH%
, 和%HOMEDRIVE%
。它们分别包含用户主目录的完整路径(不包括驱动器号)和驱动器号。
还有很多其他有用的变量可用,例如%OS%
(操作系统)或%WINDIR%
(Windows 系统目录)。有关列表,请参阅维基百科:环境变量。
注意事项:
实际上,事情有点复杂(像往常一样)。还有%USERPROFILE%
,它确实包含驱动器号,并且通常与%HOMEPATH%
plus位于同一目录%HOMEDRIVE%
。
这些变量的值以及哪个适合您,将取决于 Windows 版本和管理员的任何更改,因为它们的值可能不同(参见例如问题配置文件和主路径之间的差异)。
小智 24
另外两个选项都可以添加到脚本中并以与 BillP3rd 的答案类似的方式自动执行。
还有两个字符,但是...
SET ~=%HOMEPATH%
CD %~%
Run Code Online (Sandbox Code Playgroud)
或者...
CD %~%\Desktop
Run Code Online (Sandbox Code Playgroud)
或者...
doskey ~=cd %homepath%
~
Run Code Online (Sandbox Code Playgroud)
当然,您不能~
在路径中使用它,但是作为快速“跳转到我的主目录”输入~
Enter非常快。
Jai*_* M. 10
我.cmd
在我的目录中创建了一个文件PATH
并将其命名为cd~.cmd
. 其内容是:
@cd %HOMEPATH%
Run Code Online (Sandbox Code Playgroud)
我可以cd~
从任何地方输入以进入我的主目录,尽管它与cd ~
(注意缺少的空间)不同,但对我来说已经足够接近了。
sleske 的答案几乎完全正确,但并不总是有效。
如果您的主目录位于作为映射驱动器的网络共享设置上,则无论当前目录的驱动器如何,都运行以下命令:
cd /D %HOMEDRIVE%%HOMEPATH%
Run Code Online (Sandbox Code Playgroud)
该/D
开关是允许cd
更换驱动器所必需的。
C:\Users\<current user>\
吗?没有直接的捷径。
有几种不同的解决方案(见下文)。
将环境变量与cd
或一起使用cd /d
使用subst
或net use
来创建到另一个驱动器号的映射。
安装cygwin
和使用bash
使用powershell
- powershell 支持~
如果您准备使用powershell
而不是cmd
.
cd
或一起使用cd /d
如果要定期更改到此目录,请运行以下命令:
setx DOCS %USERPROFILE%
Run Code Online (Sandbox Code Playgroud)
这将永久设置环境变量DOCS
,但为了使用它,您需要先启动一个新的cmd
shell,然后定义变量并准备使用:
F:\test>echo %DOCS%
C:\Users\DavidPostill\
Run Code Online (Sandbox Code Playgroud)
要从任何位置更改目录,请使用以下命令:
cd /d %DOCS%
Run Code Online (Sandbox Code Playgroud)
如果您已经在驱动器上c:
,则可以使用:
cd %DOCS%
Run Code Online (Sandbox Code Playgroud)
创建一个批处理文件 ( docs.cmd
) 并将其放在PATH
.
文档.cmd:
@echo off
cd /d %DOCS%
Run Code Online (Sandbox Code Playgroud)
然后,docs
无论您当前的位置如何,您都可以直接输入,它会带您到C:\Users\<current user>
subst
或net use
创建到另一个驱动器号的映射。您可以使用subst
:
subst x: %USERPROFILE%
Run Code Online (Sandbox Code Playgroud)
进而
x:
Run Code Online (Sandbox Code Playgroud)
不幸的是,驱动器映射在重新启动后不会持续存在。
net use
将在重新启动后持续存在,例如:
net use x: "\\computerName\c$\pathName" /persistent:yes
Run Code Online (Sandbox Code Playgroud)
请参阅如何使 SUBST 映射在重新启动后持久化?详细说明。
cygwin
使用bash
您可以考虑安装cygwin:
Cygwin 是:
- 大量 GNU 和开源工具,提供类似于 Windows 上的 Linux 发行版的功能。
安装 cygwin 后,您可以bash
在 cygwin 终端中运行并根据需要设置 bash 环境变量HOME
。
cygwin 的替代方案包括msys (MingW):
MSYS 是 GNU 实用程序的集合,例如 bash、make、gawk 和 grep,用于构建依赖于传统 UNIX 工具的应用程序和程序。旨在补充MinGW和cmd shell的不足。
Windows 版 Git 提供了一个 BASH 模拟,用于从命令行运行 Git。*NIX 用户应该有宾至如归的感觉,因为 BASH 仿真的行为就像 LINUX 和 UNIX 环境中的“git”命令。
powershell
正如在SBI powershell 支持的另一个问题的评论中指出的那样,~
您只需键入:
cd ~
Run Code Online (Sandbox Code Playgroud)