GNU/Linux >> Linux Esercitazione >  >> Linux

Come aprire un file in vim usando pipe

Hai quasi finito:

$ locate updatedb | head -1 | xargs vim

a volte (sotto alcuni terminali) è necessario reimpostare il terminale dopo la modifica.

$ reset

Come editor interattivo, Vim ha bisogno sia di stdin che di stdout, quindi usarlo all'interno di una pipe è problematico e fa avvisare Vim di questo. Per un singolo file, la sostituzione del processo risolve facilmente questo problema:

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

Puoi anche usare i backtick, e questo funziona anche all'interno di Vim stesso:

:edit `locate updatedb | head -1`

Oltre alla risposta sopra, per evitare la "corruzione del terminale" dichiarata da Jacobo de Vera nel commento, usa l'opzione xargs -o o --open-tty per far supporre a vim che l'input provenga da un terminale, non da stdin.

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

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


Linux
  1. Come aprire il file .8 con Man?

  2. Come scrivo stderr su un file mentre uso tee con una pipe?

  3. VIM:come andare alla riga esatta su Ubuntu

  4. Come riempire un file con FF usando dd?

  5. Come visualizzare i descrittori di file aperti ma non utilizzando il comando lsof

Come decomprimere (aprire) il file Gz

Come monitorare le modifiche ai file utilizzando fswatch in Linux

Come proteggere con password un file usando Vim su Linux

Come aprire un file in Linux

Procedura:un'introduzione all'uso di Git

Come proteggere con password i file usando l'editor Vim in Ubuntu