cmd.exe의 ^ D (bash)와 동일합니까?


답변:


19

CtrlD* nix에서 스크립트에 다양한 쉘이 실행으로 해석 EOF를 생성합니다 exit. Windows에서 EOF에 해당하는 것은 CtrlZ이지만 프롬프트에서 입력 할 때 cmd.exe는이를 특별히 해석하지 않습니다.


3
대부분의 최신 쉘에서 쉘은 대화식으로 입력을 받아 들일 때 표준 입력 모드가 아니며 Ctrl+D실제로 는 EOF 특수 문자가 아닌 일반 문자입니다. 쉘 Ctrl+D은 종료되는 GNU Readline 또는 ZLE 조치에 바인드 되지만 (행 편집 버퍼가 비어있는 경우에만) 동작은 대부분 동일한 결과입니다. 그러나 현대 포탄의 EOF Ctrl+D아니며 일반적인 제어 특성입니다. 편집 버퍼가 비어 있지 않은 동작은 EOF 특수 문자에서 발생하는 동작과 현저히 다릅니다.
JdeBP

3
실제로, 가장 가까운 Windows NT는 다른 것과 동일합니다 bash. 되어 실제로 일을하다 TCC / LE 등 autoexecuting 키보드 별칭 이 하나 , 명령 인터프리터 (안 콘솔)는 인식 일반 키 조합을 ALT+F4 라인 편집 중 및 실행이 내장 된 exit응답 명령.
JdeBP

@JdeBP 이것을 시작점으로 삼아 방금 bash 4.4.12로 테스트하고 stty -a반환합니다 icanon(예 : 아닌 -icanon). With most modern shells, the terminal is not in canonical input mode when the shell is interactively accepting input이 시점에서 귀하의 의견 이 통계적으로 정확합니까?
levant는

10

Alt- Space. 그런 다음, C.

예, Ctrl- 보다 약간 느립니다 D. 그러나 이것은 정확히 당신이 요구하는 것에 대한 대답 exit입니다. 명령 을 입력하지 않고도 프롬프트를 종료 할 수있는 내장 동등한 키 스트로크 시퀀스 . 타사 소프트웨어가 필요하지 않습니다.

이것은 bash와 완전히 동일하게 작동하지 않을 수 있습니다. bash는 빈 명령 줄에서만 로그 아웃합니다. Windows에서는 이미 부분 명령을 입력 한 경우에도 창을 닫을 수 있습니다.


: D : D : D : D : D : D
Fatih

3

DOSKEY 를 사용하여 CMD.exe에서 매크로를 만들 수 있습니다 .

매크로 유형을 만들려면

DOSKEY [macroname]=[command(s)]

이렇게하면 키를 다른 명령에 바인딩 할 수 있습니다.

예:

DOSKEY e=exit

명령에 바인딩 eexit것이므로 e프롬프트에를 입력하면exit

당신이 사용할 수 있는지 확실하지 않습니다 CTRL- $n조합 매크로 것처럼


대부분의 제어 문자는 정상적으로 작동합니다 (물론 콘솔에서 이미 처리 한 문자는 제외). 그러나 cmd그것들을 Enter누르기를 기다리는 일반적인 명령으로 해석하기 때문에 Ctrl-Z를 별칭 e이나 별칭으로 비교할 때 이점이 없습니다 x.
grawity

3

자동 단축키 접근 방식을 수정했습니다. (댓글을 추가 할 수 없습니다.)

#IfWinActive, ahk_class ConsoleWindowClass
  ^d::
    ; First send ESC, in case we're in select mode.
    Send {Esc}{Esc}exit{Enter}
#IfWinActive


0

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

작동하지 않는 것 같은 이유가 있습니까?
Avindra Goolcharan

@ AvindraGoolcharan : 명령 프롬프트를 시작하는 방법에 따라 창 제목 이이 스크립트에서 사용한 것과 다를 수 있습니다. 두 번째 줄은 기본 설정에 따라 조정이 필요할 수 있습니다.
Der Hochstapler
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.