Lorsque j'utilise tail -f
et que je veux revenir au shell, j'utilise toujours CTRL+C
. Ou quand je tape une commande et que j'ai envie de l'annuler et de recommencer, je CTRL+C
reviens simplement à une invite de ligne de commande vide. Est-ce considéré comme une mauvaise pratique? J'ai parfois l'impression qu'il pourrait y avoir une meilleure façon de rompre avec quelque chose, mais je n'en ai vraiment aucune idée.
27
Réponses:
Ctrl+ Cenvoie un SIGINT au programme. Cela indique au programme que vous souhaitez interrompre (et terminer) son processus. La plupart des programmes interceptent correctement cela et quittent proprement. Donc, oui, c'est une façon "correcte" de terminer la plupart des programmes.
Il existe d'autres raccourcis clavier pour envoyer d'autres signaux aux programmes, mais c'est le plus courant.
la source
read()
appel système en cours . Les prochainsread()
s ne sont pas affectés. Troisièmement: rien de tout cela ne s'applique aux programmes qui mettent la discipline de ligne en mode non canonique, comme la plupart des programmes shell des deux dernières décennies et en fait tout autre programme qui utilise une bibliothèque telle que GNUreadline
.Cette méthode est très bien, vraiment.
la source
Pour abandonner une longue commande lors de la frappe, je saute parfois au début de la ligne et insère un signe de commentaire avant d'appuyer sur Entrée:
Home#Enter
Pos1#Return
Ceci est utile, si j'ai tapé une commande de copie avec un long chemin, par exemple, et observez en attendant, que je dois d'abord créer le répertoire, mais je voudrais répéter la commande par la suite. Ensuite, je dois simplement le retirer de l'historique, supprimer le hachage et le saisir.
Dans Bash, vous pouvez utiliser le raccourci
Alt+#
pour remarquer votre commande, comme indiqué dans les commentaires (Merci, @Zorawar).
la source
Ctrl-A
sans retirer vos doigts de la ligne d'accueil.Ctrl-E
va à la fin, d'ailleurs.Alt-#
: il mettra le commentaire et exécutera la commande (donc le mettre dans votre historique).De manière générale, l'utilisation de Ctrl+ Cest très bien lorsque le programme ne vous offre aucun moyen interactif de terminer (soit par conception, soit, plus fréquemment, car il a gelé ou est devenu inutilisable). Gardez à l'esprit que, en mode interactif, le combo de touches que vous voulez vraiment peut être Ctrl+ D, qui envoie un
EOF
signalant la fin de l'entrée.la source
Si vous utilisez Bash, vous pouvez également utiliser Ctrl- Zet taper
bg
pour "mettre le travail actuel en arrière-plan".la source
Comme @Patrick l'a dit dans le commentaire sur la réponse acceptée,
Cela m'a aidé quand je
Ctrl+C
n'ai pas travaillé pour récupérer la ligne de commande après avoir utilisé>>
la source