Comment effacer ce que j'ai tapé dans l'invite?

16

Je tape une commande vraiment, vraiment longue dans bash. Oups, c'était la mauvaise commande.
Pour l'instant, cela signifie que je passe par deux enfers:

  1. Réaliser ma commande était inutile.
  2. Devant vider ma coquille en maintenant enfoncée Backspacejusqu'à ce que l'invite soit claire.

Y at-il un moyen plus rapide?

digitxp
la source

Réponses:

15

Control + Aalors Control + K. Le premier déplace votre curseur au début de la ligne, le second efface la ligne après le curseur.

Une façon plus compliquée de le faire est d'appuyer sur Entrée, puis d'appuyer Control + C. Crédit à @ billc.cn

Si vous souhaitez effacer la totalité de l'invite, utilisez Control + L.

soandos
la source
6
Ctrl + C est plus rapide dans certains cas, bien que très moche: P
billc.cn
1
Je ne pensais pas que c'était pertinent. Je pensais qu'il voulait effacer la ligne, pas tuer un programme en cours d'exécution.
soandos
1
Tapez simplement quelque chose dans bashet appuyez sur Ctrl-C et voyez ce que vous obtenez.
billc.cn
2
Ctrl-L efface l'écran, mais conserve ce que vous avez tapé.
Alger
3
Cela fait donc le contraire de ce qu'il veut.
soandos
19

Ctrl-U efface l'entrée de commande que vous avez tapée, jusqu'à la position actuelle du curseur. Donc, si vous l'utilisez juste après avoir tapé la commande, mais que vous n'avez pas reculé le curseur, cela effacera tout ce que vous avez tapé.

Alger
la source
2
En fait, il "Efface la ligne avant la position du curseur. Si vous êtes à la fin de la ligne, efface la ligne entière." Ce qui est proche, mais pas totalement précis tout le temps. C'est l'opposé de Ctrl + K
soandos
Bon point. Dans la situation posée dans la question, cependant, le curseur est probablement à la fin de la ligne, il devrait donc fonctionner à cette fin. J'ai fixé la réponse pour clarifier cela.
Alger
D'où mon vote positif.
soandos
@Alger pour moi, c'est toujours tout effacer, peu importe où le curseur est reculé ou non. echo $0 retourne /bin/csh.
Geek
1
+1 car cela fonctionne à la fois dans le shell mysql et dans le shell bash: D
wim