Serie RHCSA: Modifica dei file di testo con Nano e Vim / Analisi del testo con grep e regexps – Parte 4

Ogni amministratore di sistema deve occuparsi di file di testo come parte delle sue responsabilità giornaliere. Questo include la modifica di file esistenti (probabilmente file di configurazione), o la creazione di nuovi file. È stato detto che se vuoi scatenare una guerra santa nel mondo Linux, puoi chiedere agli amministratori di sistema qual’è il loro editor di testo preferito e perché. Non faremo questo nell’articolo, ma presenteremo alcuni consigli utili per l’uso di due degli editori di testo più utilizzati in RHEL 7: nano (per la sua semplicità e facilità d’uso, specialmente per i nuovi utenti), e vi/m (per le sue numerose funzionalità che lo rendono più di un semplice editor). Sono sicuro che troverete molte altre ragioni per usare uno o l’altro, o forse qualche altro editor come emacs o pico. È interamente a te.

RHCSA: Editing Text Files with Nano and Vim – Part 4

Modifica file con l’editor Nano

Per avviare nano, puoi semplicemente digitare nano al prompt dei comandi, opzionalmente seguito da un nomefile (in questo caso, se il file esiste, verrà aperto in modalità di modifica). Se il file non esiste, o se omettiamo il nome del file, nano verrà anche aperto in modalità di modifica ma presenterà uno schermo vuoto da cui iniziare a digitare:

Nano Editor

Come puoi vedere nell’immagine precedente, nano mostra in fondo allo schermo diverse funzioni disponibili tramite le scorciatoie indicate (^, detto anche carattere atteso, indica la tastiera Ctrl). Per citare alcuni di loro:

  1. Ctrl + G: apre il menu di aiuto con una lista completa delle funzioni e delle descrizioni: Ctrl + X: esce dal file corrente. Se le modifiche non sono state salvate, verranno scartate.
  2. Ctrl + R: consente di scegliere un file da inserire nel file corrente specificando un percorso completo.
Nano Editor Help Menu
  1. Ctrl + O: salva le modifiche apportate a un file. ti permetterà di salvare il file con lo stesso nome o un diversouno. Poi premere Enter per confermare.
Nano Editor Save Changes Mode
  1. Ctrl + X: esce dal file corrente. Se le modifiche non sono state salvate, verranno scartate.
  2. Ctrl + R: consente di scegliere un file da inserire nel file corrente specificando un percorso completo.
Nano: Insert File Content to Parent File

inserirà il contenuto di /etc/passwd nel file corrente.

  1. Ctrl + K: taglia la riga corrente.
  2. Ctrl + U: incolla.
  3. Ctrl + C: annulla l’operazione corrente e ti posiziona sullo schermo precedente.

Per navigare agevolmente il file aperto, nano offre le seguenti funzioni:

  1. Ctrl + F e Ctrl + B spostano il cursore avanti o indietro, mentre Ctrl + P e Ctrl + N lo spostano su o giù di una riga alla volta, come le frecce.
  2. Ctrl + spazio e Alt + spazio spostano il cursore avanti o indietro di una parola alla volta.

Infine,

  1. Ctrl + _ (underscore) e poi digitare X,Y tiporterà esattamente alla riga X, colonna Y, se vuoi posizionare il cursore in un punto specifico del documento.
Navigate to Line Numbers in Nano

L’esempio sopra ti porterà alla riga 15, colonna 14 nel documento attuale.

Se riesci a ricordare i tuoi primi giorni con Linux, specialmente se provieni da Windows, probabilmente concorderai sul fatto che iniziare con nano è il modo migliore per un nuovo utente.

Modifica dei file con l’editor Vim

Vim è una versione migliorata di vi, un famoso editor di testo in Linux disponibile su tutti i sistemi *nix conformi a POSIX, come RHEL 7. Se ne hai la possibilità e puoi installare vim, fallo; altrimenti, la maggior parte (se non tutte) delle indicazioni fornite in questo articolo dovrebbero comunque funzionare.

Una delle caratteristiche distintive di vim sono le diverse modalità in cui opera:

  1. La modalità comando ti permetterà di sfogliare il file e inserire comandi, che sono brevi e combinazioni sensibili alle maiuscole e minuscole di una o più lettere. Se devi ripetere uno di essi un certo numero di volte, puoi precederlo con un numero (ci sono solo poche eccezioni a questa regola). Ad esempio, yy (o Y, abbreviazione di yank) copia l’intera linea corrente, mentre 4yy (o 4Y) copia l’intera linea corrente insieme alle tre linee successive (4 linee in totale).
  2. In modalità ex, puoi manipolare i file (incluso salvare un file corrente ed eseguire programmi o comandi esterni). Per entrare in modalità ex, dobbiamo digitare due punti (:) partendo dalla modalità comando (o, in altre parole, Esc + :), seguito direttamente dal nome del comando di modalità ex che desideri utilizzare.
  3. In modalità inserimento, a cui si accede digitando la lettera i, inseriamo semplicemente del testo. La maggior parte dei tasti risultano nel testo che appare sullo schermo.
  4. Potremmo sempre entrare in modalità comando (indipendentemente dalla modalità in cui siamo a lavoro) premendo la tastiera Esc.

Ora vediamo come possiamo eseguire le stesse operazioni che abbiamo descritto per nano nella sezione precedente, ma ora con vim. Non dimenticate di premere la tastiera Invio per confermare il comando vim!

Per accedere alla completa guida di vim dalla riga di comando, digitare :help mentre si è in modalità comando e poi premere Invio:

vim Edito Help Menu

La sezione superiore presenta un indice di contenuti, con sezioni definite dedicate a specifici argomenti riguardo a vim. Per navigare in una sezione, spostare il cursore sopra di essa e premere Ctrl + ] (parentesi chiusa). Notate che la sezione inferiore mostra il file corrente.

1. Per salvare le modifiche apportate a un file, eseguire qualsiasi dei seguenti comandi dalla modalità comando e funzioneranno:

:wq!
:x!
ZZ (yes, double Z without the colon at the beginning)

2. Per uscire discardando le modifiche, usare :q!. Questo comando permetterà anche di uscire dalla guida descritta sopra, e tornare al file corrente in modalità comando.

3. Taglia N righe: digitare Ndd mentre si è in modalità comando.

4. Copia M righe: digitare Myy mentre si è in modalità comando.

5. Incolla righe che erano state precedentemente tagliate o copiate: premere la tastiera P mentre si è in modalità comando.

6. Per inserire il contenuto di un altro file all’interno del file corrente:

:r filename

Ad esempio, per inserire il contenuto di /etc/fstab, fare:

Insert Content of File in vi Editor

7. Per inserire l’output di un comando nel documento corrente:

:r! command

Ad esempio, per inserire la data e l’ora nella riga sotto la posizione corrente del cursore:

Insert Time an Date in vi Editor

In un altro articolo che ho scritto per, (Parte 2 della serie LFCS), ho spiegato in maggior dettaglio le scorciatoie da tastiera e le funzioni disponibili in vim. Potresti consultare quel tutorial per ulteriori esempi su come utilizzare questo potente editor di testo.

Source:
https://www.tecmint.com/rhcsa-exam-how-to-use-nano-vi-editors/