Answers:
CtrlD* nix上的编号会生成一个EOF,各种shell会将其解释为running exit
。Windows上EOF的等效项是CtrlZ,但在提示符下键入cmd.exe不会对此进行特殊解释。
您可以使用DOSKEY在CMD.exe中创建宏。
要创建宏类型:
DOSKEY [macroname]=[command(s)]
这样,您可以将键绑定到另一个命令。
例:
DOSKEY e=exit
会绑定e
到exit
命令,所以当您e
在提示符下输入an时,就像输入一个exit
我不确定是否可以使用CTRL- $n组合作为宏
cmd
只是将它们解释为普通命令,等待Enter
按下,因此与e
或相比,别名Ctrl-Z没有优势x
。
现在在http://code.google.com/p/clink/有一个名为clink的开源项目(编辑:它已移至http://mridgers.github.io/clink/)-它将Unix readline功能引入了Windows命令提示符。
它支持大多数功能,包括命令行编辑,历史记录搜索,制表符完成以及完成脚本等。非常值得一试,使cmd的使用量大大减少。;]
您可以通过以下AutoHotKey代码片段获得相同的效果:
; Close Command Prompt when pressing Ctrl+D
#IfWinActive, Command Prompt$
^d::
; First send ESC, in case we're in select mode.
Send {Esc}{Esc}exit{Enter}
#IfWinActive
Ctrl+D
实际上只是普通字符而不是 EOF特殊字符。Shell绑定Ctrl+D
到退出的GNU Readline或ZLE操作(但仅当行编辑缓冲区为空时),因此行为几乎是相同的结果。但是,Ctrl+D
是不是 EOF与现代炮弹,只是一个普通的控制字符。编辑缓冲区不为空时的行为与EOF特殊字符的行为明显不同。