Nella shell POSIX, è possibile correggere gli errori
in una riga di comando prima di inserirlo, usando i comandi di modifica
della riga o i tasti di modifica. È anche possibile richiamare
un comando precedente e modificarlo. Consultare “Richiamo
dei comandi precedenti” più avanti in
questo capitolo.
Uso
dei comandi di modifica della riga vi |
 |
Il Capitolo 4, “Uso
dell’editor vi” spiega
come usare l’editor di schermata vi con i file di testo. L’editor
vi si usa anche per modificare le righe di comando.
Per entrare nel modo dell’editor della riga vi mentre ci si trova nella shell POSIX, premere ESC per passare dal solito “modo digitazione” al “modo modifica”.
Usare i comandi di modifica per spostare il cursore o cancellare i
caratteri. Tornare al “modo digitazione” inserendo
i comandi vi i oppure a per inserire o aggiungere del testo.
La seguente tabella elenca alcuni comandi di modifica vi.
| Azione desiderata | | Comando vi |
| Spostarsi indietro di un carattere |
| | | h |
| Spostarsi in avanti di un carattere |
| | | l |
| Spostarsi indietro di una parola |
| | | b |
| Spostarsi in avanti di una parola |
| | | w |
| Spostarsi all’inizio della riga |
| | | ^ |
| Spostarsi alla fine della riga |
| | | $ |
Cancellare il carattere sotto il cursore |
| | | x |
Il set di comandi dell’editor è governato
dall’impostazione della variabile EDITOR. Alcune possibilità sono vi o emacs. L’impostazione della variabile EDITOR dipende anche dalla definizione della variabile VISUAL.
Per usare l’editor vi provvisoriamente, digitare set -o vi. Per disattivare il modo di modifica vi, digitare set +o vi. Per impostare la variabile EDITOR automaticamente ogni volta che ci si collega,
consultare “Impostazione
dell’ambiente di login”.
Esempio
di modifica della riga con il set di comandi vi |
 |
Attivare il set di comandi vi (se non è già impostato al login
dallo script di login):
Digitare questa riga successiva ma non premere Invio:
$ ll /dve | grep '^d' | more |
Il secondo elemento avrebbe dovuto essere /dev. Correggere l’errore seguendo la procedura
indicata di seguito:
Premere ESC. Il cursore si sposta indietro di uno spazio (sotto la e in more). L’editor della riga si trova ora in “modo
comando”.
ll /dve | grep '^d' | more |
Premere H ripetutamente per spostare il cursore sotto la v in /dve.
ll /dve | grep '^d' | more |
Premere X. Il carattere v scompare ed il resto della riga si sposta di uno
spazio per riempire il vuoto. Il cursore si trova ora sotto la e in /de.
ll /de | grep '^d' | more |
Premere A. Il cursore si sposta di uno spazio sulla destra. L’editor della
riga è ora pronto ad “aggiungere” il
testo alla riga.
ll /de_ | grep '^d' | more |
Premere V. Il carattere v viene inserito dopo /de, portando a termine la correzione.
ll /dev | grep '^d' | more |
Premere Invio per eseguire la riga di comando.