当你打开 cmd 窗口时,当前目录会显示在你输入命令的同一行。例如:
C:\用户\JohnSmith>目录/s
我花了很多时间在一个嵌套很深的路径上,当前目录太长,影响了我输入/编辑命令的能力。
有什么方法可以更改当前目录,使其不显示在我的 cmd 会话中?
答案1
以下是该命令的帮助prompt
:
PROMPT [text]
text Specifies a new command prompt.
Prompt can be made up of normal characters and the following special codes:
$A & (Ampersand)
$B | (pipe)
$C ( (Left parenthesis)
$D Current date
$E Escape code (ASCII code 27)
$F ) (Right parenthesis)
$G > (greater-than sign)
$H Backspace (erases previous character)
$L < (less-than sign)
$N Current drive
$P Current drive and path
$Q = (equal sign)
$S (space)
$T Current time
$V Windows version number
$_ Carriage return and linefeed
$$ $ (dollar sign)
If Command Extensions are enabled the PROMPT command supports
the following additional formatting characters:
$+ zero or more plus sign (+) characters depending upon the
depth of the PUSHD directory stack, one character for each
level pushed.
$M Displays the remote name associated with the current drive
letter or the empty string if current drive is not a network
drive.
如果您想要更改提示并使其持久,请将其转变为持久%PROMPT%
环境变量,如下所示:
setx PROMPT $G$S
关闭并重新启动 CMD 以查看更改。
答案2
输入“prompt /?”以获取有关格式化命令提示符的帮助
答案3
我知道的唯一能做到你想做的事情就是在注册表的这个位置 HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\AutoRun 中放置一个对 bat 文件的引用(这个位置在 cmd /? 中提到)
我建议在 bat 文件中使用 subst 为长路径分配驱动器号。
你也可以通过在 bat 文件中执行 cd \blah 之类的操作来更改当前目录。或者如果你已让 R 指向你的长目录,则使用 R:。subst R:
C:\>subst P: "c:\documents and settings\administrator"
C:\>P:
P:\>
你也可以做类似的事情
prompt $g
作为著名默认选项的替代方案 prompt $p$g
但你可能会忘记你在哪个目录中。 subst 的想法看起来不错。在 cmd 提示符的自动运行注册表位置中引用的 bat 文件中。
我认为这些都是好方法,但我真的不知道其他方法。