web-dev-qa-db-fra.com

Comment exécuter une commande sans appuyer sur la touche Entrée?

Par accident, j'ai cartographié Enter via xkbset vers Pointer_button2.

Maintenant, chaque fois que je frappe Enter du charabia apparaît.

J'ai pensé à une solution de contournement impliquant de le remapper, mais cela signifie que je devrai exécuter une commande xmodmap -e "keycode 135 = Pointer_Button2" (ou tout autre code clé mais celui de Enter). Mais je ne peux pas exécuter cette commande dans le terminal, sans frapper Enter.

Comment dois-je procéder?

J'utilise Ubuntu 12.04.

119
user13107

Vous pouvez utiliser CTRL+J ou CTRL+M comme alternative à Enter. Ce sont les caractères de contrôle pour le saut de ligne (LF) et le retour chariot (CR).

127
camh

Dans une fenêtre de terminal (j'ai testé uniquement aterm, rxvt, vte et xterm), vous pouvez sélectionner la fin de la ligne, qui a collé a pour effet de presser Enter:

#          ____________type the command____________  __select to end of line__
#         /                                        \/                         \
bash-4.2$ xmodmap -e "keycode 135 = Pointer_Button2"

Collez ensuite le texte sélectionné dans la fenêtre du terminal avec le clic du bouton central de la souris (ou avec un clic simultané des boutons gauche et droit de la souris, si configuré).

40
manatwork

Exécutez la commande à partir d'un terminal non X.

CTRL+ALT+F2 devrait vous amener à une console normale. Connectez-vous en tant qu'utilisateur normal, puis exécutez-y la commande.

xmodmap n'affecte que les sessions X, il a donc besoin de DISPLAY pour fonctionner en dehors du serveur X, comme ceci:

DISPLAY=:0 xmodmap
26
Burhan Khalid

Vous pouvez le mettre dans un script (.sh) puis double-cliquer dessus. La plupart des environnements de bureau modernes offrent la possibilité d'exécuter un script au lieu de l'ouvrir dans un fichier texte.

14
chees

Si vous avez une souris et un affichage graphique, vous pouvez copier la fin d'une ligne précédente dans votre terminal et la coller à la fin de votre commande.

11
Eric Layton

CTRL+O est une autre option. Avec bash, il exécute la commande et passe au suivant le plus récent de l'histoire, il est utile de parcourir une chaîne de commandes précédemment exécutées.

4
Graeme

Si vous avez une souris, copiez simplement ceci -> "

"

et collez à côté de votre commande, puis collez la commande entière dans le terminal.

Comme enter image description here

1
xeon