Hängen Sie die Bash-Ausgabe an den VIM-Puffer an


7

Wir können den Befehl bash von vim aus wie folgt ausführen:

:! shuf -i1-123124 -n1

Dies erzeugt eine Zufallszahl im angegebenen Bereich. Gibt es eine Möglichkeit, die Ausgabe an den vim-Puffer anzuhängen?

Antworten:


9

:read ! shuf -i1-123124 -n1 Das Anhängen von read, bevor der Befehl es an den aktuellen Puffer ausgibt


8

Sie können die Filterung über ein externes Programm verwenden. Das ist jedoch nicht dasselbe wie das Anhängen. Im einfachsten Fall können Sie die aktuelle Zeile durch die Ausgabe von ersetzen shuf.

Geben Sie im normalen Modus beispielsweise !!und dann ein shuf -i1-123124 -n1. Dadurch wird die aktuelle Zeile durch die Ausgabe von ersetzt shuf.

Alternativ können Sie eine bestimmte Zeile durch die Ausgabe von shufmit ersetzen :

:123!shuf -i1-123124 -n1

Wobei 123 die Zeile ist, die Sie ersetzen möchten.

Weitere Einzelheiten und ähnliche Vorgänge finden Sie unter :help !!.


1
Stattdessen 123können Sie auch verwenden ., um auf die aktuelle Zeile oder $auf die letzte Zeile zu verweisen. Siehe :help range.
Martin Tournoij

4

:.! shuf -i1-123124 -n1 (mit einem Punkt) ersetzt die aktuelle Zeile.

:r! shuf -i1-123124 -n1 Erstellt eine neue Zeile unter der Cursorposition.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.