GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So öffnen Sie eine Datei in vim mit Pipe

Sie sind fast fertig:

$ locate updatedb | head -1 | xargs vim

Manchmal (bei bestimmten Terminals) müssen Sie das Terminal nach der Bearbeitung zurücksetzen.

$ reset

Als interaktiver Editor benötigt Vim sowohl stdin als auch stdout, daher ist die Verwendung innerhalb einer Pipe problematisch und veranlasst Vim, davor zu warnen. Für nur eine einzelne Datei löst die Prozessersetzung dies leicht:

vim "$(locate updatedb | head -1)"

Sie können auch Backticks verwenden, und das funktioniert sogar innerhalb von Vim selbst:

:edit `locate updatedb | head -1`

Verwenden Sie zusätzlich zu der obigen Antwort die xargs-Option -o, um die von Jacobo de Vera im Kommentar angegebene "Terminal Corruption" zu vermeiden oder --open-tty vim davon ausgehen lassen, dass die Eingabe von einem Terminal kommt, nicht von stdin.

$ locate updatedb | head -1 | xargs -o vim

Siehe:https://unix.stackexchange.com/a/44428/307359


Linux
  1. Wie verwende ich den Dateityp in Vim?

  2. Wie öffne ich eine .8-Datei mit Man?

  3. Wie schreibe ich stderr in eine Datei, während ich tee mit einer Pipe verwende?

  4. VIM:wie man unter Ubuntu zur genauen Zeile geht

  5. Wie fülle ich eine Datei mit FF mit dd auf?

So entpacken (öffnen) Sie die Gz-Datei

So überwachen Sie Dateiänderungen mit fswatch unter Linux

Wie man eine Datei mit Vim unter Linux mit einem Passwort schützt

So öffnen Sie eine Datei unter Linux

Gewusst wie:Eine Einführung in die Verwendung von Git

Wie man Dateien mit dem Vim-Editor in Ubuntu mit einem Passwort schützt