GNU/Linux >> Linux Esercitazione >  >> Linux

Come modificare più file usando Vim Editor

A volte, ti troverai in una situazione in cui desideri apportare modifiche a più file. Oppure potresti voler copiare il contenuto di un file in un altro. Se sei in modalità GUI, puoi semplicemente aprire i file in qualsiasi editor di testo grafico, come gedit, e usare CTRL+C e CTRL+V per copiare/incollare il contenuto. In modalità CLI, non è possibile utilizzare tali editor. Nessun problema! Dove c'è vim editor, c'è un modo! In questo tutorial impareremo a modificare più file contemporaneamente usando l'editor Vim. Credimi, questa è una funzionalità Vim molto interessante!

Installa Vim su Linux

L'editor Vim è disponibile nei repository ufficiali della maggior parte delle distribuzioni Linux. Quindi puoi installarlo usando il gestore di pacchetti predefinito.

Ad esempio, su Arch Linux e le sue varianti puoi installarlo usando il comando:

$ sudo pacman -S vim

Su Debian , Ubuntu :

$ sudo apt-get install vim

Su RHEL , CentOS :

$ sudo yum install vim

Su Fedora :

$ sudo dnf install vim

Su openSUSE :

$ sudo zypper install vim

Modifica più file alla volta utilizzando l'editor Vim in Linux

Potrebbero esserci molti modi per modificare multipli con l'editor Vim. Conosco due metodi.

Metodo 1

Ho due file e precisamente file1.txt e file2.txt , con un mucchio di parole casuali. Diamo un'occhiata a loro.

$ cat file1.txt 
ostechnix
open source
technology
linux
unix
$ cat file2.txt 
line1
line2
line3
line4
line5

Ora, modifichiamo questi due file alla volta usando l'editor Vim. Per farlo, esegui:

$ vim file1.txt file2.txt

Vim visualizzerà il contenuto dei file in ordine. Verrà mostrato prima il contenuto del primo file, poi il secondo file e così via.

Modifica più file usando Vim Editor

Passa da un file all'altro

Per passare al file successivo, digita:

:n

Passa da un file all'altro nell'editor Vim

Per tornare al file precedente, digita:

:N

Qui, N è la maiuscola (digitare MAIUSC+n).

Inizia a modificare i file come fai con l'editor Vim. Premi 'i' per passare alla modalità interattiva e modificare i contenuti a tuo piacimento. Al termine, premere ESC per tornare alla modalità normale.

Vim non ti permetterà di passare al file successivo se ci sono modifiche non salvate. Per salvare le modifiche nel file corrente, digita:

ZZ

Tieni presente che sono lettere maiuscole doppie ZZ (MAIUSC+zz).

Per abbandonare le modifiche e passare al file precedente, digita:

:N!

Per visualizzare i file attualmente in fase di modifica, digitare:

:buffers

Visualizza i file nel buffer in VIm

Vedrai l'elenco dei file caricati in fondo.

Elenco di file nel buffer in Vim

Per passare al file successivo, digita :buffer seguito dal numero del buffer. Ad esempio, per passare al primo file, digita:

:buffer 1

Oppure, fai semplicemente:

:b 1

Passa al file successivo in Vim

Ricorda solo questi comandi per passare facilmente da un buffer all'altro:

:bf            # Go to first file.
:bl            # Go to last file
:bn            # Go to next file.
:bp            # Go to previous file.
:b number  # Go to n'th file (E.g :b 2)
:bw            # Close current file.

Apertura di file aggiuntivi per la modifica

Attualmente stiamo modificando due file, ovvero file1.txt, file2.txt. Potresti voler aprire un altro file chiamato file3.txt per la modifica. Cosa farai? È facile! Digita semplicemente :e seguito dal nome del file come di seguito.

:e file3.txt

Apri file aggiuntivi per la modifica in Vim

Ora puoi modificare file3.txt.

Per vedere quanti file sono attualmente in fase di modifica, digita:

:buffers

Visualizza tutti i file nei buffer in Vim

Tieni presente che non puoi passare da un file aperto all'altro con :e utilizzando :n o :N . Per passare a un altro file, digita :buffer seguito dal numero del buffer del file.

Copiare il contenuto di un file in un altro

Sai come aprire e modificare più file contemporaneamente. A volte, potresti voler copiare il contenuto di un file in un altro. È anche possibile. Passa a un file a tua scelta. Ad esempio, supponiamo che tu voglia copiare il contenuto di file1.txt in file2.txt.

Per farlo, passa prima a file1.txt:

:buffer 1

Posiziona il cursore di spostamento davanti a una riga da copiare e digita yy strappare (copiare) la linea. Quindi, passa a file2.txt:

:buffer 2

Posiziona il cursore del mouse nel punto in cui desideri incollare le righe copiate da file1.txt e digita p . Ad esempio, vuoi incollare la riga copiata tra line2 e line3. Per farlo, posiziona il cursore del mouse prima della riga e digita p .

Esempio di output:

line1
line2
ostechnix
line3
line4
line5

Copiare il contenuto di un file in un altro file usando Vim

Per salvare le modifiche apportate nel file corrente, digita:

ZZ

Ancora una volta, tieni presente che questa è la doppia ZZ maiuscola (MAIUSC+z).

Per salvare le modifiche in tutti i file e uscire dall'editor di vim. digita:

:wq

Allo stesso modo, puoi copiare qualsiasi riga da qualsiasi file in altri file.

Copiare l'intero contenuto del file in un altro

Sappiamo come copiare una singola riga. E l'intero contenuto del file? È anche possibile. Diciamo che vuoi copiare l'intero contenuto di file1.txt in file2.txt.

Per farlo, apri prima il file2.txt:

$ vim file2.txt

Se i file sono già caricati, puoi passare a file2.txt digitando:

:buffer 2

Sposta il cursore nel punto in cui desideri copiare il contenuto di file1.txt. Voglio copiare il contenuto di file1.txt dopo la riga 5 in file2.txt, quindi ho spostato il cursore sulla riga 5. Quindi, digita il seguente comando e premi il tasto INVIO:

:r file1.txt

Copiare l'intero contenuto di un file in un altro file

Ecco, r significa leggi .

Ora vedrai il contenuto di file1.txt incollato dopo la riga 5 in file2.txt.

line1
line2
line3
line4
line5
ostechnix
open source
technology
linux
unix

Copiare l'intero contenuto del file in un altro file usando Vim

Per salvare le modifiche nel file corrente, digita:

ZZ

Per salvare tutte le modifiche in tutti i file caricati e uscire dall'editor di vim, digita:

:wq

Metodo 2

L'altro metodo per aprire più file contemporaneamente è utilizzare -o o -O bandiere.

Per aprire più file in finestre orizzontali, esegui:

$ vim -o file1.txt file2.txt

Apri più file contemporaneamente in Vim

Per passare da una finestra all'altra, premi CTRL-w w (ad esempio, premi CTRL+w e di nuovo premi w ). Oppure, usa le seguenti scorciatoie per spostarti tra le finestre.

  • CTRL-w k - finestra superiore
  • CTRL-w j - finestra inferiore

Per aprire più file in finestre verticali, esegui:

$ vim -O file1.txt file2.txt file3.txt

Apri più file in finestre verticali in Vim

Per passare da una finestra all'altra, premi CTRL-w w (ad esempio, premi CTRL+w e di nuovo premi w ). Oppure, usa le seguenti scorciatoie per spostarti tra le finestre.

  • CTRL-w l - finestra sinistra
  • CTRL-w h - finestra destra

Tutto il resto è uguale a quello descritto nel metodo 1.

Ad esempio, per elencare i file attualmente caricati, eseguire:

:buffers

Per passare da un file all'altro:

:buffer 1

Per aprire un file aggiuntivo, digita:

:e file3.txt

Per copiare l'intero contenuto di un file in un altro:

:r file1.txt

L'unica differenza nel metodo 2 è una volta che hai salvato le modifiche nel file corrente utilizzando ZZ , il file si chiuderà automaticamente. Inoltre, devi chiudere i file uno per uno digitando :wq . Ma se avessi seguito il metodo 1, digitando :wq tutte le modifiche verranno salvate in tutti i file e tutti i file verranno chiusi contemporaneamente.

Per maggiori dettagli, fare riferimento alle pagine man.

$ man vim

Lettura consigliata:

  • Come commentare più righe contemporaneamente in Vim Editor
  • Come gestire i plugin di Vim usando Vundle su Linux
  • Come utilizzare la funzione di controllo ortografico in Vim Text Editor

Ora sai come modificare più file usando l'editor vim in Linux. Come puoi vedere, la modifica di più file non è così difficile. L'editor Vim ha funzionalità più potenti.

Scriveremo altri suggerimenti Vim nei giorni a venire. Resta sintonizzato!


Linux
  1. Come configuro Vim come editor predefinito su Linux

  2. Come modificare più file e passare da uno all'altro in VIM utilizzando i buffer

  3. Come comprimere più file su Linux

  4. Vim:come aprire più file in schede diverse?

  5. Come posso modificare un file se non ci sono vi, vim, joe, ecc.?

Come proteggere con password i file nell'editor Vim

Come modificare i file di configurazione in Ubuntu

Come uscire da Vim? Diversi modi per uscire da Vim Editor

Come commentare più righe contemporaneamente nell'editor di vim usando 3 metodi

Come installare Vim su Ubuntu

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