Esiste un colpo di tasto equivalente per uscire da un prompt dei comandi su Windows (avviato tramite Start-> Esegui: cmd) nel bash standby di Ctrl- dper evitare la necessità di digitare exit
per lasciare la shell?
Esiste un colpo di tasto equivalente per uscire da un prompt dei comandi su Windows (avviato tramite Start-> Esegui: cmd) nel bash standby di Ctrl- dper evitare la necessità di digitare exit
per lasciare la shell?
Risposte:
No. CtrlDon * nix genera un EOF, che varie shell interpretano come in esecuzione exit
. L'equivalente per EOF su Windows è CtrlZ, ma cmd.exe non lo interpreta specialmente quando viene digitato al prompt.
bash
et al. in realtà sta facendo un alias della tastiera autoeseguente TCC / LE , come questo , in cui l'interprete dei comandi (non la console) riconosce la normale combinazione di tasti ALT+F4
durante la modifica della linea ed esegue il exit
comando integrato in risposta.
stty -a
ritorni icanon
(cioè no -icanon
). Il tuo commento With most modern shells, the terminal is not in canonical input mode when the shell is interactively accepting input
è statisticamente corretto in questo momento?
Alt- Space. Poi, C.
Sì, è un po 'più lento di Ctrl- D. Ma questa è la risposta esattamente a ciò che stai chiedendo: la sequenza di tasti equivalente equivalente integrata che ti consente di uscire dal prompt senza dover digitare il exit
comando. Nessun software di terze parti necessario.
Questo potrebbe non funzionare in modo assolutamente identico a bash: bash si disconnetterà solo su una riga di comando vuota. In Windows, questo può chiudere la finestra, anche se hai già digitato un comando parziale su di essa.
È possibile utilizzare DOSKEY per creare macro in CMD.exe.
Per creare un tipo di macro:
DOSKEY [macroname]=[command(s)]
In questo modo puoi associare una chiave a un altro comando.
Esempio:
DOSKEY e=exit
si legherebbe e
al exit
comando, quindi quando si immette un e
al prompt sarebbe come se si immettesse unexit
Non sono sicuro se puoi usare CTRL- $ncombinazioni come macro però
cmd
li interpreta semplicemente come normali comandi, in attesa Enter
di essere premuti, quindi non vi è alcun vantaggio di aliasing Ctrl-Z rispetto a solo e
o x
.
Ora esiste un progetto open source chiamato clink su http://code.google.com/p/clink/ (modifica: è passato a http://mridgers.github.io/clink/ ) - porta la funzionalità readline di Unix su il prompt dei comandi di Windows.
Supporta la maggior parte delle funzionalità tra cui la modifica della riga di comando, la ricerca della cronologia, il completamento delle schede insieme agli script di completamento, ecc. ;]
Puoi ottenere lo stesso effetto con questo frammento di 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
è in realtà solo un carattere ordinario e non un carattere speciale EOF. Le conchiglie si leganoCtrl+D
a un'azione GNU Readline o ZLE che esce (ma solo se il buffer di modifica della linea è vuoto), quindi il comportamento è principalmente lo stesso risultato. Ma nonCtrl+D
è EOF con conchiglie moderne, solo un normale carattere di controllo. Il comportamento quando il buffer di modifica non è vuoto è notevolmente diverso da quello che succede con un carattere speciale EOF.