Question Comment exécuter les commandes Unix depuis Vim?


Comment puis-je exécuter les commandes Unix pendant que je suis à l'intérieur de vim?


51
2018-05-18 23:05


origine




Réponses:


Aller en mode commande Esc, puis courez :!unix_command. Tout court du : rapide à commencer par un coup ! sera exécuté en tant que commande shell unix. Vous serez montré le résultat et autorisé à appuyer sur une touche pour revenir à votre travail dans vim.

Si vous avez du texte sélectionné en mode visuel et que vous voulez l'envoyer à une commande en tant que STDIN, appuyez sur !! et entrez votre commande. Les résultats de la commande remplaceront le texte que vous avez sélectionné.


75
2018-05-18 23:11



Aussi, !!  sans pour autant tout texte sélectionné vous permettra d'exécuter une commande, puis d'insérer le résultat à la position actuelle du curseur - inutile d'envoyer des fichiers à STDIN et de les remplacer si vous n'en avez pas besoin ou si vous ne le souhaitez pas. - Kromey
aussi, si vous voulez simplement mettre la sortie d'une commande dans votre document, faites simplement :r!unix_command. Ceci est utile pour des commandes telles que date - Yab
Vous pouvez également exécuter plusieurs lignes de votre tampon vi par le shell (ou tout interpréteur) et les remplacer par le résultat de l'exécution. par exemple: :10,20!sh ou former des lignes marquées, 'a,'b!sh - jlliagre
Une autre chose qui mérite d'être notée est que cela dépend du système d'exploitation que vous utilisez. Si vous utilisez Windows, il exécutera une commande shell Windows. Beaucoup de gens qui liront cela le sauront déjà, mais pour les personnes venant de Google, j'ai pensé qu'il serait utile de le mentionner. - Andrew


De Aide VIM miroir:

:shell        :sh[ell]        start a shell
:!            :!{command}     execute {command} with a shell

18
2018-05-18 23:13