Comment supprimer rapidement mes commandes?

163

J'utilise un terminal pour presque toutes les tâches. Disons que j'ai entré une commande énorme comme celle-ci:

sudo a-huge-command

Quel est le moyen le plus simple de supprimer toute la commande avec un seul raccourci, plutôt que de continuer à appuyer sur la touche backspace ?

Je suis un débutant Ubuntu qui cherche à utiliser Ubuntu de manière professionnelle.

    
posée batman 04.09.2012 - 13:56
la source

9 réponses

176

Utilisez Ctrl + U pour couper le texte de la position du curseur au début de la ligne de commande. Plus tard, si vous voulez, utilisez Ctrl + Y pour coller le texte coupé.

Si vous souhaitez simplement supprimer la ligne de commande actuelle et obtenir une nouvelle invite de nettoyage, appuyez sur Ctrl + C .

Pour plus d'informations, consultez la documentation d'Ubuntu pour utiliser le terminal

    
réponse donnée Eric Carvalho 04.09.2012 - 14:03
la source
109

Ctrl + U devrait vous aider.

Voici le reste des options disponibles. Extrait de ici

UNIX comprend plusieurs commandes de touches de contrôle, des commandes que vous entrez en maintenant la touche Ctrl enfoncée tout en appuyant sur une deuxième touche

CTRL + S - gèle l’écran et arrête tout affichage à l’écran de continuer (équivalent à une touche sans défilement) (prend parfois un moment pour travailler)

CTRL + Q - débloque l'écran et laisse l'écran continuer

CTRL + C - interrompt un programme en cours d'exécution

CTRL + \ - identique à CTRL - C mais plus fort (utilisé lorsque le terminal ne répond pas)

CTRL + Z - suspend un programme en cours d'exécution (utilisez la commande fg pour continuer le programme, voir s $

CTRL + H - supprime le dernier caractère saisi

CTRL + W - supprime le dernier mot saisi

CTRL + U - supprime la dernière ligne saisie

CTRL + R - recherche le texte de l’historique

CTRL + D - termine la saisie de texte pour de nombreux programmes UNIX, y compris le courrier et l’écriture.

Note:

Lorsque nous supprimons en utilisant CTRL + W ou CTRL + U , nous effectuons également un ) "couper" (yank in) opération (supprimer et stocker dans le tampon / presse-papiers). Pour coller (retirer) la chaîne dans buffer / presse-papiers, utilisez CTRL + Y .

    
réponse donnée devav2 04.09.2012 - 14:04
la source
61

J'utilise généralement Alt + Backspace . Si vous utilisez bash , cela vous permettra de supprimer le caractère spécial précédent ( / , ; , , etc.). Si vous utilisez zsh , les barres obliques et les points-virgules seront également supprimés. C'est beaucoup plus rapide que de simplement frapper Backspace .

Dans bash , c'est différent de Ctrl + w dans le sens où Ctrl + w supprime le mot précédent lorsque Alt + Retour arrière supprime jusqu'à ce que le caractère spécial précédent soit trouvé. Dans zsh , les deux combinaisons de touches font la même chose

    
réponse donnée Exeleration-G 04.09.2012 - 14:00
la source
33

Voici un liste des raccourcis clavier utilisables avec le shell bash .

Ctrl + A    Go to the beginning of the line you are currently typing on
Ctrl + E    Go to the end of the line you are currently typing on
Ctrl + L    Clears the Screen, similar to the clear command
Ctrl + U    Clears the line before the cursor position. If you are at the end of the line, clears the entire line.
Ctrl + H    Same as backspace
Ctrl + R    Lets you search through previously used commands
Ctrl + C    Kill whatever you are running or start a new prompt
Ctrl + D    Exit the current shell
Ctrl + Z    Puts whatever you are running into a suspended background process. fg restores it.
Ctrl + W    Delete the word before the cursor
Ctrl + K    Clear the line after the cursor
Ctrl + T    Swap the last two characters before the cursor
Esc + T     Swap the last two words before the cursor
Alt + F     Move cursor forward one word on the current line
Alt + B     Move cursor backward one word on the current line
Tab         Auto-complete files and folder names

Ce que vous voulez faire est réalisé soit avec Ctrl + C ou Ctrl + U à la fin de la ligne.

    
réponse donnée OrangeDog 04.09.2012 - 20:42
la source
24

Alt + # (c.-à-d. Alt + Shift + 3 ) commentera la commande en cours et continuera sur la ligne suivante.

Par exemple, si vous tapez t , e , s , t , Alt + # , vous obtiendrez:

[email protected]$ #test
[email protected]$ 

Si vous voulez récupérer votre ancienne commande, vous pouvez appuyer sur la flèche vers le haut et supprimer le caractère de hachage ( Up , Home , Delete ou Up , Ctrl + A , Supprimer ).

Je pense que c'est une fonctionnalité de ReadLine GNU , car elle fonctionne dans Bash, Python et MySQL.

    
réponse donnée Snowball 04.09.2012 - 19:21
la source
22

Ctrl + C - en plus d'interrompre les commandes en cours d'exécution, il peut également être utilisé pour "interrompre" l'entrée de votre ligne de commande.

Contrairement au Ctrl + U , vous verrez toujours ce que vous avez tapé mais votre curseur passera à la nouvelle ligne et vous obtiendrez une ligne de commande vide prompt.

    
réponse donnée Vilmantas Baranauskas 04.09.2012 - 14:16
la source
8

Le raccourci Bash readline Ctrl + X + E est très utile lorsque vous travaillez sur la ligne de commande. Si vous êtes en train de saisir une commande longue et que vous décidez de l’ouvrir à la place dans votre éditeur de texte par défaut, il vous suffit d’utiliser le raccourci.

Il utilise la bibliothèque readline de Bash et ce raccourci particulier est appelé edit-and-execute-command . Vous pouvez définir votre éditeur par défaut en plaçant export EDITOR="/usr/bin/vi" dans ~/.bashrc ou ~/.bash_aliases .

Entrez bind -P pour voir vos liaisons readline actuelles et faites référence à man readline ou à pages de manuel Ubuntu en ligne pour plus d'informations.

    
réponse donnée user76204 14.11.2012 - 22:06
la source
7

J'utilise aussi Esc + Backspace pour supprimer tous les caractères précédents jusqu’à un caractère spécial. C'est la même chose avec Alt + Retour arrière . Pratique si vous supprimez quelques mots à la fois.

    
réponse donnée jytou 06.09.2012 - 17:53
la source
3

Pour les liaisons de clé vi

Lorsque vous utilisez une mappe de clés vi comme dans bash avec set -o vi ou dans zsh avec bindkey -v :

Mode d'insertion

C'est la même frappe que dans le mode par défaut / emacs:

Ctrl + U

la suppression de la position actuelle au début de la ligne. Il supprime donc toute la ligne si le curseur est à la fin.

Mode normal

Il existe plusieurs façons de supprimer la ligne en deux frappes:

Supprimez linewise dd , avec le nombre par défaut d’une ligne:

d d

qui est le plus simple en termes de touches touchées.

Une autre méthode consiste à: Aller au début de la ligne avec ^ et supprimer à la fin de la ligne avec D :

^ D

Celles-ci suppriment la ligne entière, non seulement à gauche, comme Ctrl + U en mode insertion, ou la variante est saignante.

Si vous êtes actuellement à la fin de la ligne, vous n'avez pas besoin de supprimer quoi que ce soit à droite, cela ferait aussi:

Supprimer d'ici d , au début de la ligne ^ :

d ^

Vous pouvez tous les utiliser depuis le mode encart, vous devez d’abord vous échapper normalement pour passer en mode normal. Par exemple, pour supprimer toute la ligne du mode insertion, utilisez:

Esc d d

    
réponse donnée Volker Siegel 15.09.2014 - 05:48
la source

Lire d'autres questions sur les étiquettes