Existe-t-il un raccourci clavier équivalent pour quitter une invite de commande sous Windows (lancée via Démarrer-> Exécuter: cmd) à la veille bash de Ctrl- dpour éviter d'avoir à taper exit
pour quitter le shell?
27
Existe-t-il un raccourci clavier équivalent pour quitter une invite de commande sous Windows (lancée via Démarrer-> Exécuter: cmd) à la veille bash de Ctrl- dpour éviter d'avoir à taper exit
pour quitter le shell?
Non. On CtrlD* nix génère un EOF, que divers shells interprètent comme fonctionnant exit
. L'équivalent d'EOF sur Windows est CtrlZ, mais cmd.exe n'interprète pas cela spécialement lorsqu'il est tapé à l'invite.
Ctrl+D
n'est en fait qu'un caractère ordinaire et non un caractère spécial EOF. Les shells se lientCtrl+D
à une action GNU Readline ou ZLE qui se termine (mais uniquement si le tampon d'édition de ligne est vide), le comportement est donc généralement le même. Mais ceCtrl+D
n'est pas EOF avec des obus modernes, juste un personnage de contrôle ordinaire. Le comportement lorsque le tampon d'édition n'est pas vide est nettement différent de ce qui se produit avec un caractère spécial EOF.bash
et al. que vous êtes en train de faire est un alias de clavier à exécution automatique TCC / LE , comme celui-ci , où l'interpréteur de commandes (pas la console) reconnaît la combinaison de touches ordinaireALT+F4
pendant l'édition de ligne et exécute laexit
commande intégrée en réponse.stty -a
retourneicanon
(c'est-à-dire pas-icanon
). Votre commentaire est-ilWith most modern shells, the terminal is not in canonical input mode when the shell is interactively accepting input
vraiment statistiquement correct en ce moment?Alt- Space. Ensuite, C.
Ouais, c'est un peu plus lent que Ctrl- D. Mais c'est la réponse à exactement ce que vous demandez: la séquence de touches équivalentes intégrée qui vous permet de quitter l'invite sans avoir à taper la
exit
commande. Aucun logiciel tiers requis.Cela peut ne pas fonctionner de manière absolument identique à bash: bash ne se déconnectera que sur une ligne de commande vide. Sous Windows, cela peut fermer la fenêtre, même si vous avez déjà tapé une commande partielle dessus.
la source
Vous pouvez utiliser DOSKEY pour créer des macros dans CMD.exe.
Pour créer un type de macro:
De cette façon, vous pouvez lier une clé à une autre commande.
Exemple:
se lierait
e
à laexit
commande, donc lorsque vous entrez une
à l'invite, ce serait comme si vous saisissiez unexit
Je ne sais pas si vous pouvez utiliser CTRL- $ncombinaisons comme macros Bien que
la source
cmd
interprète simplement comme des commandes normales, attendantEnter
d'être pressées, il n'y a donc aucun avantage à aliaser Ctrl-Z par rapport à justee
oux
.Correction de l'approche autohotkey. (Je ne peux pas ajouter de commentaire.)
la source
Il existe maintenant un projet open source appelé clink sur http://code.google.com/p/clink/ (modifier: il a été déplacé vers http://mridgers.github.io/clink/ ) - il apporte la fonctionnalité de ligne de lecture Unix à l'invite de commande Windows.
Il prend en charge la plupart des fonctionnalités, y compris l'édition en ligne de commande, la recherche d'historique, la complétion d'onglets ainsi que les scripts de complétion, etc. ;]
la source
Vous pouvez obtenir le même effet avec cet extrait de code AutoHotKey :
la source