我习惯于使用

cd ~


进入我的主目录。在Windows命令提示符下,我必须执行

cd Users\username


才能到达那里。有没有像Linux这样的捷径?如果我可以通过这样做到达那里,那就太好了。


在Windows Vista中是否可能出现这种情况?

评论

在Unix中,不需要波浪号。不带任何参数的cd将更改为您的主目录。

su上有这样的问题,找不到它。

@coneslayer我知道,但是要将文件从一个目录移动到另一个目录,请使用波浪号。

像cd%userprofile%
一样简单
您可以使用Windows Power Shell(在Win XP及更高版本上),将〜用作主目录。另请参阅----> stackoverflow.com/questions/9228950 / ...

#1 楼

您始终可以将.bat文件放在%PATH%中的某个位置,这会为您更改路径。

评论


你能详细说明吗?

– jbyrd
20 Mar 20 '20 at 12:41

#2 楼

是的,您可以使用%HOMEPATH%%HOMEDRIVE%。它们分别包含用户主目录的完整路径(没有驱动器号)和驱动器号。

还有很多其他有用的变量,例如%OS%(操作系统),或%WINDIR%(Windows系统目录)。有关列表,请参见Wikipedia:环境变量。


注:

实际上,情况有点复杂(通常)。还有%USERPROFILE%,它确实包含驱动器号,并且通常与%HOMEPATH%%HOMEDRIVE%处于同一目录。

这些变量的值以及哪个变量适合您,将取决于Windows版本和管理员所做的任何更改,因为它们的值可能不同(例如,请参阅配置文件和本地路径)。

评论


我认为这是最正确的答案,因为它不依赖于硬编码的路径以及它们之间可能存在的任何古怪的文件系统链接。

– Ed Orsi
2014年3月11日在16:57

这是正确的答案。

– Frederik Krautwald
2014年6月3日22:30在

这救了我的命!在查看了来自不同问题的许多其他答案之后。再次!这对我有用,应该标记为该问题的答案。

–帕特里夏
16年1月25日在6:43

@MissLucy:很高兴对您有所帮助。至于接受答案:这取决于OP的决定。您可以在问题中添加评论以提醒他们。

–sleske
16年1月25日在9:39

请改用%USERPROFILE%。

– JJS
16年4月8日在19:43

#3 楼

可以将其他两个选项都添加到脚本中,并以类似于BillP3rd的答案的方式自动执行。

还有两个字符,但是...

SET ~=%HOMEPATH%    
CD %~%


或...

CD %~%\Desktop



或...

doskey ~=cd %homepath%
~


当然,您不能在路径中使用此~,但是作为快速“跳转到我的主目录”键入~ Enter很快。

评论


你在开玩笑吗?我现在有一个char快捷方式,可以进入我喜欢cd进入的任何文件夹。这应该是第一答案。

–安德鲁(Andrew)
19年5月16日在12:42

#4 楼

sleske的答案几乎是完全正确的,但它并不总是有效。

如果您的主目录位于网络共享设置中作为映射驱动器,则无论当前目录的驱动器如何,都运行以下命令:

cd /D %HOMEDRIVE%%HOMEPATH%


/D开关是必需的,以便允许cd更换驱动器。

#5 楼

我在.cmd的目录中创建了一个PATH文件,并将其命名为cd~.cmd。它的内容是:

 @cd %HOMEPATH%
 


我可以从任何地方键入cd~来到达我的主目录,尽管它与cd ~不同(请注意缺少的空格),但对我来说足够接近。

评论


最聪明的答案。将您的答案与肯尼·埃维特(Kenny Evitt)的答案相结合,可提供最佳解决方案。

–Sнаđошƒаӽ
16 Mar 4 '16 at 15:09

#6 楼

C:\Users\<current user>\是否有快捷方式?

没有直接的快捷方式。

有几种不同的解决方案(请参见下文)。


将环境变量与cdcd /d一起使用
使用substnet use创建到另一个驱动器号的映射。
安装cygwin并使用bash
使用powershell-Powershell支持~
/>
如果准备使用powershell而不是cmd,则最后一种解决方案可能是最简单的。


解决方案1:将环境变量与cdcd /d一起使用
/>

如果要定期更改此目录,请运行以下命令:

setx DOCS %USERPROFILE%


这将永久设置环境变量DOCS,但是要使用它,您需要先启动一个新的cmd shell,然后定义该变量并准备使用:

F:\test>echo %DOCS%
C:\Users\DavidPostill\


要更改任何位置的目录,请使用以下命令:

cd /d %DOCS%


如果已经在驱动器c:上,则可以使用:

cd %DOCS%


创建一个批处理文件(docs.cmd)并将其放在您的PATH中。


@echo off
cd /d %DOCS%


您然后无论您当前所在的位置如何,都可以直接键入docs,这将带您进入C:\Users\<current user>。解决方案2:使用substnet use来创建到另一个驱动器号的映射。

您可以使用subst

subst x: %USERPROFILE%


,然后

x:


不幸的是,驱动器映射不会持久

net use将在重新启动后持续存在,例如:

net use x: "\computerName\c$\pathName" /persistent:yes


请参见如何使SUBST映射在重新启动后持久存在?有关详细说明。


解决方案3:安装cygwin并使用bash


您可以考虑安装cygwin:


Cygwin是:


GNU和开放源代码工具的大量集合,它们提供的功能类似于Linux发行版。在Windows上。



一旦安装了cygwin,就可以在cygwin终端中运行bash,并根据需要设置bash环境变量HOME

cygwin的替代品包括msys(MingW):MSYS是GNU实用程序的集合,例如bash,make,gawk和grep,以允许构建依赖于传统UNIX工具的应用程序和程序。在场。它旨在补充MinGW和cmd shell的缺陷。


Windows版Git:


Windows版Git提供了BASH仿真。用于从命令行运行Git。 * NIX用户应该感到宾至如归,因为BASH仿真的行为就像在LINUX和UNIX环境中的“ git”命令一样。




解决方案4:使用powershell


如SBI powershell在对另一个问题的评论中指出的那样,支持~,您只需键入:

cd ~



进一步阅读



Windows CMD命令行的AZ索引-与Windows cmd行相关的所有事物的极佳参考。

cd-更改目录-选择文件夹(和驱动器)

setx-永久设置环境变量,SETX可用于为计算机(HKLM)或当前登录的用户(HKCU)设置环境变量。 />
替换-用驱动器号替换网络或本地路径。


评论


如果在Powershell上有另外两种方式:cd $ HOME和cd $ env:HOMEPATH

– DirkThannhäuser
18年5月31日在21:04



@DavidPostill我可能会误解“快捷方式”一词的用法,但是如果没有,您的答案是没有%UserProfile%的快捷方式实际上是不准确的:cd%UserProfile%。

– JW0914
20 Mar 18 '20 at 11:59

#7 楼

Dunno是我们工作登录脚本的功能还是Windows默认设置,但我可以使用cd %HOMEPATH%来实现,其中HOMEPATH是环境变量。

评论


我懂了。编写%HOMEPATH%仍然需要很多时间。您也无法自动完成。是否可以通过在cmd.exe中执行新命令使用户名等于%HOMEPATH%?

–classer
2010年7月28日在12:03

#8 楼

我意识到这是一个已久的问题,仅作记录。安装clink,这会以多种方式扩展您的命令提示符。是的,它比上面的解决方案重,但它使cmd窗口的性能好得多。

评论


clink == cmd.exe强大的Bash风格命令行编辑

–嫌疑犯
2015年2月20日14:29在

是的,重点是〜解析到User \ {user}目录。

– THBBFT
15年2月20日在14:55

#9 楼

如果希望所有用户的命令提示符都在其“主”目录中启动,请创建以下注册表项作为可扩展字符串值(当然,用引号引起来):

HKLM\Software\Microsoft\Command Processor\AutoRun : "cd /d %USERPROFILE%"


如果只希望命令提示符执行此操作:

HKCU\Software\Microsoft\Command Processor\AutoRun : "cd /d %USERPROFILE%"


我保留了一个C:\Scripts文件夹,在其中保留了一个我通过调用的autoexec.bat文件的做法此键。

评论


当心,这会破坏Bower和npm(以及Visual Studio)...

–四进制
17-10-10在9:50

#10 楼

我为此使用了一个更好的终端(cmder)。
它内置了别名,非常易于使用。
在这里只需阅读有关Aliase的文档即可。

#11 楼

Windows确实已经成为“关于GUI的全部”,因此,就您而言,我只是获得了所需的工具,而不是尝试按照自己的意愿“弯曲”系统。 MinGW工具是一些使用最广泛的GNU工具的极佳收藏,如果您是Win上的nix迷,我强烈建议您使用它。

#12 楼

我认为每个人都错过了要点:cd〜的目的是使用最少的击键次数,而不要使用笨拙的百分比,美元或波浪号...并且上帝禁止使用“ cd%HOMEPATH%”或“ cd%HOME%”
很久以前,我在ac:\ Tools \ bats目录中放置了优化的最小键入脚本,名为.... cdd.bat ..
那么,为什么要使用cdd.bat?为什么不使用home.bat或h.bat?
简单:使用home或h,您将有一些额外的右移动作来击打'h','o','m',但仍然必须移动左手一次按下'e',而右手等待按下Enter,这也很重要,这需要进行5次击键,而对于'h'则只有两次,但右手需要左右移动...我将进行权衡。
使用'h',整个右前臂会有一点移动,先击中'h'然后是'enter'...但我也将以'cdd'为代价,我的两只手已经放在最佳的键盘位置上,因此任何一个都没有多余的移动。让我获得4次击键,而前3次则是快速击键。
您必须每天尝试并注意一下,才能看到好处。