|
LESS(1) manual page
Table of Contents
less - l'opposto di more
less -?
less -V
less [-[+]aBcCdeEfgGiImMnNqQrsSuUVwX]
[-b bufs ] [-h righe ] [-j riga ] [-k keyfile ]
[-{oO} logfile
] [-p modello ] [-P prompt ] [-t tag ]
[-T tagsfile ] [-x tab ] [-y righe
] [-[z] righe ]
[+[+]cmd ] [nomefile ]...
Less è un programma
simile a more (1)
, ma che permette di muoversi sia in avanti che indietro
all'interno del file. Inoltre, less non ha bisogno di leggere l'intero file
prima di avviarsi, quindi con i file molto larghi si avvia più velocemente
di editor di testi come vi (1)
. Less usa termcap (o terminfo su alcuni
sistemi), cosicché ne è possibile l'utilizzo su molti tipi di terminali.
C'è anche un limitato supporto per i terminali di hardcopy. (Su un terminale
di hardcopy, le righe che dovrebbero essere stampate in cima allo schermo
sono prefissate da un caret (^).)
I comandi sono basati sia su more che
su vi. Essi possono essere preceduti da un numero decimale, chiamato N
nelle descrizioni riportate in seguito. Il numero è usato da alcuni comandi,
come indicato.
Nelle seguenti descrizioni, ^X significa control-X.
ESC sta per il tasto ESCAPE; per esempio ESC-v indentifica la sequenza
di due caratteri "ESCAPE" e "v".
- h o H
- Aiuto: visualizza un riepilogo di
questi comandi. Se vi dimenticate facilmente tutti gli altri comandi, ricordatevi
almeno questo.
- SPAZIO o ^V o f o ^F
- Si sposta in avanti di N righe, di default
una finestra (guardate l'opzione -z più avanti). Se N è più grande della
dimensione dello schermo, solo l'ultima schermata è visualizzata. Attenzione:
alcuni sistemi usano il carattere ^V come carattere speciale.
- z
- Come SPAZIO,
ma se N è specificato, esso diventa la nuova dimensione della finestra.
- INVIO o ^N o e o ^E o j o ^J
- Si sposta in avanti di N righe, una di default.
Tutte le N righe sono visualizzate, anche se N è maggiore della dimensione
dello schermo.
- d o ^D
- Si sposta in avanti di N righe, mezza schermata di
default. Se N è specificato, diventa il nuovo valore di default per i comandi
d ed u seguenti.
- b o ^B o ESC-v
- Si sposta in avanti di N righe, una finestra
di default (guardate l'opzione -z più avanti). Se N è più grande della dimensione
dello schermo, solo l'ultima schermata è visualizzata.
- w
- Come ESC-v, ma
se N è specificato esso diventa la nuova dimensione della finestra.
- y o
^Y o ^P o k o ^K
- Si sposta indietro di N righe, una di default. Tutte le N
righe vengono visualizzate, anche se N è maggiore della dimensione dello
schermo. Attenzione: su alcuni sistemi ^Y è un carattere speciale di controllo.
- u o ^U
- Si sposta indietro di N righe, di default della metà della grandezza
dello schermo. Se N è specificato, esso diventa il nuovo valore di default
per i comandi d ed u seguenti.
- r o ^R o ^L
- Ridisegna lo schermo.
- R
- Ridisegna
lo schermo, cancellando ogni input dal buffer. È utile se il file sta cambiando
mentre è visualizzato.
- F
- Si sposta in avanti e continua a leggere anche
quando raggiunge la fine del file. Normalmente questo comando si usa quando
si è già alla fine del file. È un modo per controllare la coda di un file
che cresce mentre è visualizzato. (Il comportamento è simile a quello del
comando "tail -f".).
- g o < o ESC-<
- Si sposta alla riga N nel file, la prima
di default (inizio del file). (Attenzione: questo comando è lento se il
file è di grandi dimensioni.)
- G o > o ESC->
- Si sposta alla riga N nel file,
l'ultima di default (fine del file). (Attenzione: questo comando può risultare
lento se N è grande, o se N non viene specificato e si sta leggendo lo
standard input (STDIN) anziché un file.
- p o %
- Si sposta ad una posizione
N percento (N%) nel file. N deve essere compreso tra 0 e 100. (Questo comando
funzione anche se si sta leggendo lo standard input (STDIN), ma solo se
less l'ha già letto fino alla fine. È sempre veloce, ma non sempre utile.
- {
- Se una parentesi sinistra a graffa appare nella prima riga dello schermo,
il comando { andrà alla corrispondente parentesi destra a graffa. Quest'ultima
sarà collocata nell'ultima riga dello schermo. Se c'è più di una parentesi
sinistra a graffa sulla prima riga dello schermo, un numero N può esser
usato per specificare l'N-esima parentesi della riga.
- }
- Se una parentesi
destra a graffa appare nell'ultima riga dello schermo, il comando } andrà
alla corrispondente parentesi sinistra a graffa. Quest'ultima sarà collocata
nella prima riga dello schermo. Se c'è più di una parentesi destra a graffa
nell'ultima riga dello schermo, un numero N può essere usato per specificare
l'N-esima parenti della riga.
- (
- Come {, ma vale per le parentesi tonde anziché
per quelle graffe.
- )
- Come }, ma vale per le parentesi tonde anziché per
quelle graffe.
- [
- Come {, ma vale per le parentesi quadre anziché per quelle
graffe.
- ]
- Come }, ma vale per le parentesi quadre anziché per quelle graffe.
- ESC-^F
- Seguito da due caratteri, funziona come {, ma usa i due caratteri
rispettivamente come parentesi di apertura e di chiusura. Per esempio,
"ESC ^F < >" può essere usato per cercare il carattere > corrispondente al
carattere < presente nella prima riga dello schermo.
- ESC-^B
- Seguito da due
caratteri, funziona come }, ma usa i due caratteri rispettivamente come
parentesi di apertura e di chiusura. Per esempio, "ESC ^B < >" può essere
usato per tornare indietro nel testo al carattere < corrispondente al carattere
> presente nell'ultima riga dello schermo.
- m
- Seguito da qualsiasi lettera
minuscola, segna con quella lettera la posizione corrente.
- '
- (Apice.) Seguito
da una qualsiasi lettera minuscola, torna alla posizione precedentemente
segnata con quella lettera. Seguito da un altro apice, torna alla posizione
in cui è stato eseguito l'ultimo comando di movimento "ampio". Seguito
da un ^ o da un $, salta rispettivamente all'inizio o alla fine del file.
I segni sono conservati quando viene esamitato un nuovo file, quindi
il comando ' può essere usato per passare da un file all'altro.
- ^X^X
- Come l'apice.
- /modello
- Ricerca (in avanti nel documento) l'N-esima riga contentente il
modello. Di default N è 1. Il modello è un'espressione regolare, come quelle
riconosciute da ed. La ricerca inizia dalla seconda riga visualizzata (per
cambiare questo guardate le opzioni -a e -j).
Alcuni caratteri sono speciali
(hanno una funzione particolare) se inseriti all'inizio del modello; essi
modificano infatti il tipo di ricerca anziché divenire parte del modello
:
- !
- Cerca le righe che NON soddisfano il modello.
- *
- Ricerca in più file.
Se la ricerca raggiunge la fine del file corrente senza alcun riscontro
positivo, essa continua nel file successivo specificato nella riga di
comando.
- @
- Inizia la ricerca dalla prima riga del primo file della riga
di comando, indipendentemente da quale file è visualizzato attualmente
e dai settaggi delle opzione -a e -j.
- ?modello
- Ricerca (indietro nel documento)
l'N-esima riga contentente il modello. Di default N è 1. Il modello è un'espressione
regolare, come quelle riconosciute da ed. La ricerca inizia dalla riga
immediatamente precedente alla prima visualizzata.
Alcuni caratteri sono
speciali, come nel comando / :
- !
- Cerca le righe che NON soddisfano il
modello.
- *
- Ricerca in più file. Se la ricerca raggiunge l'inizio del file
corrente senza alcun riscontro positivo, essa continua nel file precedente
specificato nella riga di comando.
- @
- Inizia la ricerca dall'ultima riga
dell'ultimo file della riga di comando, indipendentemente da quale file
è visualizzato attualmente e dai settaggi delle opzioni -a e -j.
- ESC-/modello
- Come "/*".
- ESC-?modello
- Come "?*".
- n
- Ripete la precedente ricerca, per l'N-esima
riga contenente l'ultimo modello. Se la ricerca precedente era stata modificata
da un !, la ricerca viene fatta per l'N-esima riga che NON contiene il modello.
Se la ricerca precedente era stata modificata da un *, la ricerca continua
nei file successivi (o precedenti) se non viene soddisfatta nel file corrente.
Non c'è alcun effetto se la ricerca precedente era stata modificata da
@.
- N
- Ripete la ricerca precedente, ma nella direzione opposta.
- ESC-n
- Ripete
la ricerca precedente, sovrapponendo gli estremi dei file. L'effetto è uguale
a quello della ricerca modificata col comando *.
- ESC-N
- Ripete la ricerca
precedente, ma nella direzione opposta e sovrapponendo gli estremi dei
file.
- ESC-u
- Annulla l'evidenziazione della ricerca. Disattiva l'evidenziazione
delle stringhe corrispondenti al modello di ricerca corrente. Se l'evidenziazione
è già disattivata per effetto di un precedente comando ESC-u, essa viene
riattivata. Inoltre, ogni comando di ricerca riattiva l'evidenziazione. (L'evidenziazione
può anche essere disattivata tramite il flag -G; in tal caso i comandi
di ricerca non la riattivano.)
- :e [nomefile]
- Esamina un nuovo file. Se non
viene specificato alcun nome di file, il file "corrente" (guardate i comandi
:d e :p più avanti) della lista specificata nella riga di comando viene
riesaminato. Un segno di percentuale (%) nel nome del file è sostituito
dal nome del file corrente. Un cancelletto (#) è sostituito dal nome del
file esaminato precedentemente. Il nome del file è inserito nella lista
file della riga di comando, quindi sarà visibile ai successivi comandi
:n e :p. Se il nome del file è formato da più nomi di file, essi vengono
tutti inseriti nella lista e viene esaminato il primo.
- ^X^V o E
- Come :e. Attenzione:
su alcuni sistemi ^V è un carattere speciale.
- :n
- Esamina il file successivo
della lista fornita sulla riga di comando. Se un numero N è specificato,
l'N-esimo file viene esaminato.
- :p
- Esamina il file precedente della lista
fornita sulla riga di comando. Se N è specificato, l'N-esimo file precedente
viene esaminato.
- :x
- Esamina il primo file della lista fornita sulla command
kube, Se un numero N è specificato, l'N-esimo file della lista viene esaminato.
- = o ^G o :f
- Stampa a video alcune informazioni sul file corrente, compreso
il nome, il numero di riga e l'offset dell'ultima riga. Se possibile, visualizza
anche la lunghezza del file e la percentuale (misurata sull'ultima riga
dello schermo).
- -
- Posto sulla linea di comando e seguito da una delle opzioni
descritte più avanti, cambia il valore di quell'opzione e visualizza un
messaggio che descrive il nuovo valore. Se la lettera che contraddistingue
l'opzione ha anche un valore numerico (come -b o -h) o di stringa stringa
(come -P o -t), un nuovo valore può essere immesso dopo la lettera - opzione.
Se non viene immesso alcun nuovo valore viene visualizzato un messsaggio
che descrive il settaggio corrente.
- -+
- Seguito da una delle lettere - opzioni
descritte più avanti, ne cambia il settaggio al valore di default e visualizza
un messaggio di descrizione del nuovo settaggio. (Il comando "-+X " ha lo
stesso effetto di "-+X " sulla linea di comando.) Questo comando non ha
effetto per le opzioni con valore di stringa.
- --
- Seguito da una delle lettere
- opzioni descritte più avanti, ne cambia il settaggio all'opposto del valore
di default e visualizza un messaggio di descrizione del nuovo settaggio.
(Il comando "--X " ha lo stesso effetto di "--X " sulla linea di comando.)
Questo comando non ha effetto per le opzioni con valore numerico o di
stringa.
- _
- (Underscore.) Seguito da una delle lettere - opzioni (vedi oltre),
visualizza un messaggio che descrive il settaggio corrente di quell'opzione.
- +cmd
- Fa sì che il comando (cmd) specificato venga eseguito ogni volta
che un nuovo file è esaminato. Per esempio, +G farà si che less visualizzi
ciascun file a partire dalla fine anziché dall'inizio.
- V
- Stampa il numero
di versione di less.
- q o :q o :Q o ZZ
- Esce da less.
I tre comandi che seguono
possono funzionare o meno, a seconda della vostra configurazione di sistema.
- v
- Avvia un editor per modificare il file attualmente visualizzato. Il nome
dell'editor è preso dalla variabile d'ambiente VISUAL, o da EDITOR se VISUAL
non è definita. Se nessuna delle due è definita, less cercherà di avviare
vi. Leggete a questo proposito la discussione su LESSEDIT nella sezione
PROMPT di questo documento.
- ! comando
- Avvia una shell su cui far girare
il comando dato. Un segno di percentuale (%) nel comando è sostituito dal
nome del file corrente. Un cancelletto (#) è sostituito dal nome del file
esaminato precedentemente. "!!" ripete l'ultimo comando eseguito nella shell.
"!" senza alcun comando avvia una shell. In tutti i casi, la shell è presa
dalla variabile d'ambiente SHELL. Se questa non è definita, verrà avviata
sh.
- | <m> comando
- <m> rappresenta qualsiasi lettera-segno (che contraddistingue
cioè una sezione selezionata). Questo comando invia questa sezione via
pipe al comando specificato. La sezione del file da inviare è tra la prima
riga dello schermo e la posizione marcata dalla lettera. <m> può anche essere
^ o $ per indicare rispettivamente l'inizio o la fine. Se <m> è . o newline,
la schermata corrente viene inviata.
Le opzioni della linea di
comando sono descritte in questa sezione. La maggior parte di esse può
essere modificata mentre less è in esecuzione, tramite il comando "-".
Le opzioni possono anche essere lette dalla variabile d'ambiente "LESS".
Per esempio, per evitare di scrivere "less -opzioni ..." ogni volta che lanciate
less, potete dire a csh:
setenv LESS "-opzioni"
oppure se usate sh:
LESS="-opzioni"; export LESS
La variabile d'ambiente viene processata
prima della linea di comando, quindi le opzioni di quest'ultima hanno la
precedenza su quelli della variabile d'ambiente LESS. Se un'opzione appare
nella variabile LESS, può essere riportata al suo valore di default tramite
la command line: è sufficiente precedere l'opzione con "-+".
Un dollaro
($) può essere usato per segnalare la fine di un'opzione con valore di
stringa. Questo è importante solo per opzioni come -P, che sono seguite
da una stringa.
- -?
- Quest'opzione visualizza un riepilogo dei comandi accettati
da less (come il comando h). Se quest'opzione è specificata, tutte le altre
vengono ignorate e less esce dopo aver visualizzato la schermata di aiuto.
(A seconda di come la vostra shell interpreta il punto di domanda, può
essere necessario includerlo tra doppi apici: "-\?".)
- -a
- Fa sì che la ricerca
parta dalla riga successiva all'ultima visualizzata sullo schermo, saltando
quindi tutte le righe visualizzate. Di default la ricerca inizia dalla
seconda riga dello schermo (oppure dall'ultima trovata; guardate l'opzione
-j).
- -bn
- Specifica il numero di buffer che less userà per ciascun file. I
buffer sono di 1K, e di default ne vengono utilizzati 10 per ciascun file
(a meno che il file non sia una pipe; guardate l'opzione -B a questo
propostito). Il numero n specifica un diverso numero di buffer da usare.
- -B
- Di default, quando i dati vengono letti da una pipe, i buffer vengono
allocati automaticamente in base alle necessità. Se viene letta una grande
quantità di dati dalla pipe, verrà allocata una grande quantità di memoria.
L'opzione -B disabilita l'allocazione automatica dei buffer, cosicchè venga
usato un numero di buffer pari a quello specificato tramite l'opzione -b.
Attenzione: l'uso di -B può portare ad una visualizzazione errata, dato
che solo la parte del file vista più recentemente viene è tenuta in memoria;
ogni dato precedente viene perso.
- -c
- Fa sì che lo schermo, quando ridisegnato,
venga dipinto dalla prima riga in giù. Di default, i ridisegni sono
fatti dalla parte bassa dello schermo.
- -C
- Uguale a -c, ma lo schermo viene
pulito prima di essere ridisegnato.
- -d
- L'opzione -d sopprime il messaggio
di errore che viene normalmente visualizzato se il terminale è "muto"
(cioè se manca di importanti funzioni quali la capacità di pulire lo schermo
o di spostarsi in avanti. L'opzione -d non cambia il comportamento di less
su un terminale muto).
- -Dx colore
- [Solo MS-Dos] Imposta il colore del testo
visualizzato. x è un singolo carattere che seleziona il tipo di di cui
si vuole impostare il colore: n=normale, s=evidenziato, b=grassetto, u=sottolineato,
k=lampeggiante. color è una coppia di colori separata da un punto. Il primo
numero seleziona il colore del testo (foreground) ed il secondo quello
dello sfondo (background). Un singono numero N corrisponde a N.0 .
- -e
- Fa
sì che less esca automaticamente la seconda volta che raggiunge la fine
del file. Di default, il solo modo per uscire da less è il comando q.
- -E
- Fa sì che less esca automaticamente la prima volta che raggiunge la
fine del file.
- -f
- Forza l'apertura dei file non regolari. (un file non regolare
è una directory o un dispositivo (device). Inoltre sopprime l'avviso quando
viene aperto un file binario. Di default, less rifiuta di aprire file non
regolari.
- -g
- Normalmente, less evidenzia TUTTE le stringhe che hanno
soddisfatto l'ultimo comando di ricerca. Il flag -g cambia questo comportamento
e viene evidenziata solo la particolare stringa trovata dall'ultimo comando
di ricerca. Questo può causare un aumento di velocità di less.
- -G
- Il parametro
(flag) -G sopprime l'evidenziazione di tutte le stringhe trovate dai comandi
di ricerca.
- -hn
- Specifica un numero massimo di righe di cui spostarsi all'indietro.
Se è necessario spostari di più di n righe, lo schermo viene invece ridisegnato
in avanti. (Se il terminale non permette di muoversi indietro, -h0 è considerato
il valore fisso.)
- -i
- Fa sì che le ricerche ingnorino il case (maiuscolo
e minuscolo sono cioè considerati identici). Quest'opzione è ignorata se
nel modello di ricerca appare almeno una lettera maiuscola.
- -I
- Come -i, ma
le ricerche ignorano il case anche se il modello contiene lettere maiuscole.
- -jn
- Specifica una riga sullo schermo dove la riga "bersaglio" deve essere
posizionata. Una riga bersaglio è l'oggetto di una ricerca, del salto ad
un numero di riga, del salto ad una "percentuale" del file o del salto
ad una posizione segnata. La riga sullo schermo è contraddistinta da un
numero: la riga più in alto è la 1, la successiva è la 2 e così via. Il
numero può essere negativo per indicare una riga relativamente al fondo
dello schermo: l'ultima riga dello schermo è -1, la penultima -2, e così
via. Se l'opzione -j è usata, la ricerca inizia dalla riga immediatamente
successiva alla riga bersaglio. Se ad esempio si usa "-j4", la riga bersaglio
è la quarta dello schermo, quindi la ricerca inizia dalla quinta.
- -knomefile
- Fa sì che less apra ed interpreti il file specificato come un file lesskey
(1)
. Può essere specificata più di un'opzione -k. Se un file chiamato .less
esiste nella home directory (~), anche questo è usato come file di tipo
lesskey.
- -m
- Fa sì che less usi la sola posizione percentuale come prompt
(come more ). Di default, less usa i due punti (:) come prompt.
- -M
- Fa sì
che less usi come prompt il nome del file, la riga corrente e la posizione
percentuale.
- -n
- Sopprime i numeri di riga. Il default (cioè usare i numeri
di riga) può provocare un rallentamento nell'esecuzione di less soprattutto
con file molto lunghi. Il flag -n evita questi problemi. Usare i numeri di
riga significa che il numero di riga viene visualizzato nel prompt e nel
comando = e che il comando v passerà all'editor il numero della riga corrente
(leggete a questo proposito anche la discussione su LESSEDIT nella sezione
PROMPT).
- -N
- Fa sì che un numero di riga venga visualizzato all'inizio di
ogni riga sullo schermo.
- -onomefile
- Fa sì che less copi il suo input nel
file specificato man mano che l'input viene visualizzato. Questo comando
funziona solo se l'input è una pipe, non un file ordinario. Se il file già
esiste, less chiederà di confermarne la sovrascrittura.
- -Ofilename
- L'opzione
-O è come l'opzione -o, ma sovrascrive i file esistenti senza chiedere alcuna
conferma.
Se non è stato impostato alcun file di log, le opzioni -o e -O
possono essere utilizzate, quando less è in esecuzione, per specificarne
uno. Se non viene indicato alcun nome di file, queste due opzioni visualizzano
il nome del file di log. Il comando "s" è l'equivalente dell'opzione -o quando
less è in esecuzione.
- -pmodello
- L'opzione -p nella command line è l'equivalente
del comando +/modello : quando less si avvia, inizia la visualizzazione
alla prima occorrenza di modello nel file.
- -Pprompt
- Permette di personalizzare
i tre stili di prompt secondo le proprie preferenze. Quest'opzione viene
di solito inserita nella variabile d'ambiente LESS, anziché venire specificata
ad ogni chiamata a less. Quest'opzione deve essere l'ultima della variabile
LESS oppure deve terminare con un dollaro ($). -P seguita da una stringa
cambia il prompt di default (quello corto) impostandolo alla stringa specificata.
-Pm cambia il prompt medio (-m), -PM quello lungo (-M). Inoltre, -P= cambia
il messaggio visualizzato dal comando =. Tutte le stringhe immesse devono
essere formate da lettere e da speciali sequenze di caratteri escape. Leggete
la sezione PROMPT per maggiori dettagli.
- -q
- Imposta una modalità di operazione
moderatamente "silenziosa": il segnale acustico del terminale non viene
utilizzato se si tenta di muoversi prima dell'inizio od oltre la fine del
file. Se il terminale prevede un "segnale ottico", esso viene usato al
posto di quello acustico. Il segnale acustico viene comunque utilizzato
in caso di altri errori, come l'immissione di un carattere non valido. Di
default il segnale acustico è utilizzato in tutti questi casi.
- -Q
- Imposta
una modalità di operazionetotalmente "silenziosa": il segnale acustico
non viene mai usato.
- -r
- Fa sì che i caratteri di controllo "grezzi" vengano
visualizzati. Di default i caratteri di controllo sono visualizzati con
la notazione dei caret (^); ad esempio, un control-A (001 ottale) viene
visualizzato come "^A". Attenzione: quando il flag -r è utilizzato, less
non può più gestire l'apparenza del documento sullo schermo (dato che questa
dipende da come ciascuno schermo risponde ai caratteri di controllo). Possono
quindi verificarsi vari problemi di visualizzazione, come righe lunghe
che vengono spezzate nei posti sbagliati.
- -s
- Fa sì che più righe vuote consecutive
vengano ridotte ad una sola. Questo è utile quando si visualizza l'output
di nroff.
- -S
- Fa sì che le righe più lunghe della larghezza dello schermo
siano troncate anziché divise. Ciò significa che la parte eccedente della
riga non viene visualizzata. Di default le righe vengono divise: la parte
eccedente viene visualizzata nella riga successiva.
- -ttag
- L'opzione -p, seguita
da un TAG, permetterà di modificare il file contenente tale tag. Perché
ciò sia possibile deve tuttavia essere presente nella directory corrente
un file chiamata "tags", creato precedentemente con il comando ctags (1)
.
Questa opzione può anche essere specificata da dentro less (usando il
comando -) come metodo per esaminare un nuovo file. Il comando ":t", quando
less è avviato, equivale a specificare -t sulla linea di comando.
- -Ttagsfile
- Specifica un tag file al posto di "tags".
- -u
- Fa sì che i backspace (cancellazione)
ed i carriage return (invio) vengano considerati caratteri stampabili;
essi vengono quindi inviati al terminale quando appaiono in input.
- -U
- Fa
sì che i backspace (cancellazione) ed i carriage return (invio) siano
trattati come caratteri di controllo; essi vengono quindi trattati come
specificato tramite l'opzione -r.
Di default, se non è specificata alcuna
opzione -u o -U, i backspace vicini agli underscore (_) sono trattati in
maniera speciale: il testo è visualizzato sottolineato, utilizzando la
possibilità hardware del terminale di sottolineare. Inoltre, anche i backspace
compresi tra due caratteri uguali sono trattati in maniera speciale: il
testo è visualizzato in grassetto, utilizzando la possibilità hardware
del terminale di visualizzare in grassetto. Gli altri backspace vengono
cancellati, assieme al carattere che li precede. I carriage return seguiti
da un newline sono cancellati. Gli altri carriage return sono trattati
come specificato dall'opzione -r. Si possono compiere ricerche sul testo
sottolineato o in grassetto se non sono attive né -u né -U.
- -V
- Visualizza
il numero di versione di less.
- -w
- Fa sì che vengano usate righe vuote per
rappresentare le righe oltre la fine del file. Di default, viene utilizzata
una tilde (~).
- -xn
- Imposta la lunghezza del tab a n caratteri. Il valore
di default è 8.
- -X
- Disabilita l'invio al terminale delle stringhe di inizializzazione
e deinizializzazione di termcap. Questo può essere utile se la stringa
di deinizializzazione fa qualcosa di inutile, come pulire lo schermo.
- -yn
- Specifica un numero massimo di righe di cui spostarsi in avanti. Se è
necessario spostarsi di più di n righe, lo schermo viene ridisegnato.
Le opzione -c e -C possono essere utilizzati per ridisegnare lo schermo
dall'alto, se desiderato. Di default, ogni movimento in avanti causa scrolling.
- -[z]n
- Cambia la dimensione di default della finestra di scrolling a n
righe. Il valore di default è una schermata. Anche i comandi z e w possono
essere usati per cambiare la dimensione della finestra. La "z" può essere
omessa per compatibilità con more. Se il numero n è negativo, esso indica
n righe in meno rispetto alla dimensione corrente dello schermo. Ad esempio,
se lo schermo è di 24 righe, -z-4 imposta la finestra di scrolling a 20
righe. Se lo schermo è ridimensionato a 40 righe, la finestra di scrolling
viene automaticamente cambiata a 36 righe.
- +
- Se un'opzione della linea di
comando inizia con + , la parte rimanente di tale opzione è considerata
un comando iniziale per less. Ad esempio, +G dice a less di iniziare la
visualizzazione alla fine del file anziché all'inizio, e +/xyz gli indica
di iniziare alla prima occorrenza di "xyz" nel file. Costituisce caso a
parte +<numero>, che viene considerato come +<numero>g; ciò significa che
la visualizzazione inizia al numero di riga specificato (comunque, guardate
il caveat sotto il comando "g" più in su). Se l'opzione inizia con ++, il
comando iniziale è applicato ad ogni file che verrà visualizzato, non
solo al primo. Il comando + descritto precedentemente può anche essere
usato per impostare (o modificare) un comando inizia per tutti i file.
Quando si immettono i comandi nella riga in fondo allo
schermo (ad esempio il nome del file per un comando :e, o il modello per
un comando di ricerca), alcuni tasti possono essere usati per manipolare
la linea di comando. La maggior parte dei comandi ha una forma alternativa,
indicata tra [ parentesi quadre ], che possono essere usate se un tasto
non esiste su una particolare tastiera. (La forma indicata tra le parentesi
quadre non funziona nella versione per MS-DOS.) Ognuno di questi tasti speciali
può essere immesso con valore letterale precedendolo con il carattere
"letterale", sia ^V che ^A. Anche un backslash () può essere immesso con
valore letterale immettendone due (\).
- FRECCIASINISTRA [ ESC-h ]
- Sposta
il cursore di uno spazio a sinistra.
- FRECCIADESTRA [ ESC-l ]
- Sposta il cursore
di uno spazio a destra.
- ^FRECCIASINISTRA [ ESC-b o ESC-FRECCIASINISTRA ]
- (Cioé
CONTROL e FRECCIASINISTRA simultaneamente.) Sposta il cursore di una parola
a sinistra.
- ^FRECCIADESTRA [ ESC-w o ESC-FRECCIADESTRA ]
- (Cioé CONTROL e FRECCIADESTRA
simultaneamente.) Sposta il cursore di una parola a destra.
- HOME [ ESC-0
]
- Sposta il cursore all'inizio della riga.
- END [ ESC-$ ]
- Sposta il cursore
alla fine della riga.
- BACKSPACE
- Cancella il carattere sulla sinistra del
cursore, o cancella il comando se la linea di comando è vuota.
- CANCELLA
(DELETE) [ ESC-x ]
- Cancella il carattere sotto il cursore.
- ^BACKSPACE [ ESC-BACKSPACE
]
- (Cioé CONTROL e BACKSPACE simultaneamente.) Cancella la parola sulla
sinistra del cursore.
- ^CANCELLA (^DELETE) [ ESC-X o ESC-CANCELLA ]
- (Cioé CONTROL
e CANCELLA simultaneamente.) Cancella la parola sotto il cursore.
- FRECCIASU
[ ESC-k ]
- Ripesca la linea di comando precedente.
- FRECCIAGIU' [ ESC-j ]
- Ripesca
la linea di comando successiva.
- TAB
- Completa il nome di file parziale sulla
sinistra del cursore. Se più di un nome di file può completare il nome
parziale, il primo trovato viene inserito nella linea di comando. TAB a
ripetizione scorreranno tra gli altri nomi di file.
- BACKTAB [ ESC-TAB ]
- Come TAB, ma scorre nella direzione opposta tra i nomi dei file.
- ^L
- Completa
il nome fi file parziale sulla sinistra del cursore. Se più di un nome
di file può completare il nome parziale, tutti i nomi di file vengono
inseriti nella linea di comando (se ci stanno).
- ^U (Unix) r ESC (MS-DOS)
- Cancella l'intera linea di comando, o annulla il comando se la linea di
comando è vuota. Se avete cambiato il vostro carattere di line-kill (cancellazione
della riga) sotto Unix a qualcosa di diverso da ^U, dovrete usare quello
anziché ^U.
In less, potete definire i vostri comandi personlizzati
usando il programma lesskey (1)
per creare nella vostra home directory
(~) un file chiamato ".less". Questo file specifica una serie di tasti e
le azioni associate a ciascuno di questi tasti. Potete anche usare lesskey
per cambiare i tasti per l'editing della linea di comando (leggete la sezione
EDITING DI RIGA). Per maggiori dettagli consultate la man page di lesskey.
Potete definire un "preprocessore dell'input"
("input preprocessor") per less. Prima che less apra un file, esso offre
al vostro preprocessore la possibilità di modificarne l'aspetto finale.
Un preprocessore dell'input è un semplice programma (o script) che scrive
i contenuti del file d'origine in un altro file, chiamato file sostitutivo
(replacement file). I contenuti del file sostitutivo sono poi visualizzati
al posto di quelli del file originario. Il tutto sarà trasparente all'utente,
e sembrerà che ad essere letto sia il file originario; less infatti visualizzerà
come nome del file corrente il nome del file originario.
Un preprocessore
dell'input riceve un solo argomento nella riga di comando: il nome del
file originario, così come è immesso dall'utente. Il programma dovrà creare
il file sostitutivo e, a lavoro finito, stamparne il nome sull'output standard
(STDOUT). Se il preprocessore non stampa alcun nome di file, less usa il
file originario. Il preprocessore non viene chiamato in causa quando si
sta visualizzando l'input standard (STDIN). Per impostare un preprocessore
dell'input, assegnate alla variabile d'ambiente LESSOPEN la linea di comando
che chiama il vostro programma. Questa linea di comando dovrà includere
un'occorrenza della stringa "%s", che verrà sostituita dal nome del file
al momento dell'esecuzione del preprocessore.
Quando less chiude un file
aperto tramite preprocessore, chiama un altro programma, detto "postprocessore
dell'input" ("input postprocessor"), che può compiere qualsiasi operazione
di pulizia desiderata (come ad esempio la cancellazione del file sostitutivo
creato da LESSOPEN). Questo programma riceve due argomenti sulla linea
di comando: il nome del file originario (così come è stato immesso dall'utente),
ed il nome del file sostitutivo. Per impostare un postprocessore dell'input,
assegnate alla variabiel d'ambiente LESSCLOSE la linea di comando che chiama
il vostro programma. Potere includere in questa linea di comando due occorrenze
della stringa "%s"; la prima sarà sostituita dal nome del file originario
e la seconda dal nome del file sostitutivo.
Per esempio su molti sistemi
Unix questi due script vi permetteranno di tenere i file in forma compressa,
e di poterli ancora visualizzare con less
lessopen.sh:
#! /bin/sh
case
"$1" in
*.Z) uncompress -c $1 >/tmp/less.$$ 2>/dev/null
if [ -s /tmp/less.$$
]; then
echo /tmp/less.$$
else
rm -f /tmp/less.$$
fi
;;
esac
lessclose.sh:
#! /bin/sh
rm $2
Per usare questi script, metteteli entrambi dove possono
essere eseguiti e impostate LESSOPEN="lessopen.sh %s", e LESSCLOSE="lessclose.sh %s %s".
Script più complessi possono essere scritti per accettare altri tipi di
file compressi, e così via.
È anche possibile impostare un preprocessore
dell'input in modo che invii direttamente i dati a less (tramite pipe),
anziché salvarli in un file sostitutivo. Questo evita di dover scompattare
tutto il file prima di iniziarne la visualizzazione. Un preprocessore dell'input
che lavora in questo modo è chiamato "input pipe". Una input pipe, anzichè
scrivere il nome del file sostitutivo sul suo output standard (STDOUT),
ve ne scrive tutto il contenuto. Se l'input pipe non scrive alcun carattere
all'output standard, allora non c'è alcun file sostitutivo e less usa il
file originario. Per usare una input pipe, immettete come primo carattere
della variabile LESSOPEN una barra verticale (|), che indica che il preprocessore
dell'input è una input pipe.
Per esempio su molti sistemi Unix, i seguenti
script hanno lo stesso funzionamento di quelli visti in precedenza:
lesspipe.sh:
!# /bin/sh
case "$1" in
*.Z) uncompress -c $1 2>/dev/null
;;
esac
Per
usare questo script, mettetelo dove può essere eseguito ed impostate LESSOPEN="|lesspipe.sh
%s". Quando un'input pipe è usata, si può comunque usare un postprocessore
LESSCLOSE, ma non è necessario dal momento che non c'è alcun file sostitutivo
da cancellare. In questo caso, il nome del file sostitutivo passato a LESSCLOSE
è "-".
Ci sono tre tipi di caratteri
nel file di input:
- caratteri normali
- possono essere visualizzati direttiamente.
- caratteri di controllo
- non devono essere visualizzati direttamente, ma
si trovano in genere nei file di testo (ad esempio il tab ed il backspace).
- caratteri binari
- non devono essere visualizzati direttamente e non dovrebbero
trovarsi nei file di testo.
Un "set di caratteri" è semplicemente una descrizione
di quali caratteri devono essere considerati normali, di controllo, e
binari. La variabile d'ambiende LESSCHARSET può essere usata per selezionare
un set di caratteri. I possibili valori per questa variabile sono: Possible
values for LESSCHARSET are:
- ascii
- Il set di caratteri di default. BS (backspace),
TAB, NL (newline), CR (carriage return), e formfeed sono caratteri di
controllo, tutti i caratteri tra 127 e 255 sono binari, tutti gli altri
sono normali.
- latin1
- Seleziona il set di caratteri ISO 8859/1. latin-1 è
la stessa cosa di ASCII, solo che i caratteri tra 161 e 255 sono considerati
caratteri normali.
- dos
- Seleziona un set di caratteri adatto per MS-DOS.
- koi8-r
- Seleziona un set di caratteri russo.
- next
- Seleziona un set di caratteri
adatto ai computer NeXT.
In alcuni casi, può essere necessario forzare
less ad usare un set di caratteri diverso da quelli definibili tramite
LESSCHARSET. In questo caso, la variabile d'ambiende LESSCHARDEF può essere
usata per definire un set di caratteri. Essa dovrebbe essere impostata
con una stringa in cui ciascun carattere rappresenta un carattere del
set. Il carattere "." è utilizzato per un carattere normale, "c" per un
carattere di controllo, "b" per un carattere binario. Un numero decimale
può essere usato per la ripetizione. Ad esempio, "bccc4b" signigica che
il carattere 0 è binario, 1, 2 e 3 sono di controllo, 4, 5, 6 e 7 sono
binari, e 8 e normale. Tutti i caratteri dopo l'ultimo sono considerati
dello stesso tipo dell'ultimo: in questo caso i caratteri dal 9 al 255
sarebbero considerati normali. (Questo è un esempio, e non rappresenta
necessariamente alcun set di caratteri reale.)
Questa tabella mostra il
valore di LESSCHARDEF equivalente a ciascuno dei possibile balore per
LESSCHARSET.
ascii 8bcccbcc18b95.b
latin1 8bcccbcc18b95.33b.
dos 8bcccbcc12bc5b95.b.
koi8-r 8bcccbcc18b95.b128.
next 8bcccbcc18b95.bb125.bb
Se né LESSCHARSET né
LESSCHARDEF sono definite, ma il vostro sistema supporta l'interfaccia
setlocale, less userà setlocale per determinare il set di caratteri. Setlocale
è controllata impostando le variabili d'ambiente LANG o LC_CTYPE.
I caratteri
di controllo e binari sono visualizzati inversamente (cioè con i colori
del testo e dello sfondo scambiati). Ognuno di questi caratteri è visualizzato,
se possibile, tramite la notazione dei caret (^) (es. ^A per control-A). La
notazione dei caret è usata solo se l'inversione del bit 0100 risulta in
un carattere visualizzabile. Altrimenti, il carattere è visualizzato come
un numero esadecimale in parentesi triangolari ("<" e ">"). Questo formato
può essere cambiato impostando la variabile d'ambiente LESSBINFMT. LESSBINFMT
può iniziare con un "*" ed un carattere per selezionare l'attributo di
visualizzazione: "*k" è lampeggiante, "*d" è grassetto, "*u" è sottolineato,
"*s" è evidenziato (invertito). Se LESSBINFMT non inizia con un "*", l'attributo
è ritenuto normale. La parte restante di LESSBINFMT è una stringa che può
includere una sequenza di escape in stile printf (un segno % seguito da
x, X, o, d, ecc.). Per esempio, se LESSBINFMT è "*u[%x]", i caratteri binari
sono visualizzati sottolineati e circondati da parentesi, in notazione
esadedecimale. Il valore di default, se LESSBINFM non è specificato, è
"*d<%X>".
L'opzione -P permette di impostare il prompt secondo le
proprie preferenze. La stringa data all'opzione -P sostituisce la stringa
specificata del prompt. Alcuni caratteri nella stringa sono interpretati
in maniera speciale. Il meccanismo del prompt è alquanto complicato allo
scopo di fornire la massima flessibilità, ma l'utente normale non ha bisogno
di capire tutti i dettagli sulla costruzione dei prompt personalizzati.
Un segno di percentuale (%) seguito da un singolo carattere viene espanso
a seconda di qual'è il carattere successivo:
- %bX
- E` sostituito dall'offset
in byte (cioè dalla posizione) all'interno del file corrente. La b e ` seguita
da un singolo carattere (visualizzato sopra come X , che specifica la
riga di cui si deve usare l'offset in byte. Se il carattere è una "t", l'offset
in byte della prima riga dello schermo è utilizzato, una "m" indica di
usare la riga in mezzo, una "b" indica di usare la riga in fondo, una
"B" indica di usare la riga immediatamente successiva alla riga in fondo,
e una "j" indica di usare la riga "bersaglio", come specificato dall'opzione
-j.
- %B
- E` sostituito dalla dimensione del file corrente.
- %E
- E` sostituito dal
nome dell'editor (preso dalla varabile d'ambiente VISUAL o, se questa non
è definita, da EDITOR). Leggete a questo proposito la discussione su LESSEDIT,
più avanti.
- %f
- E` sostituito dal nome del file corrente.
- %i
- E` sostituito
dall'indice (cioè la posizione) del file corrente nella lista dei file
in input.
- %lX
- E` sostituito dal numero di una riga nel file di input. La
riga da usare è determinata dalla X , come nell'opzione %b.
- %L
- E` sostituito
dal numero di riga dell'ultima riga del file di input.
- %m
- E` sostituito dal
numero totale di file di input.
- %pX
- E` sostituito dalla posizione percentuale
all'interno del file corrente.
- %s
- Come %B.
- %t
- Causa la rimozione di qualsiasi
spazio in più. Di solito è utilizzato alla fine della stringa, ma può
apparire ovunque.
- %x
- E` sostituito dal nome del file di input successivo
della lista.
Se un qualsiasi valore è sconosciuto (ad esempio, la lunghezza
del file se l'input è una pipe), un punto di domanda viene visualizzato
al suo posto.
Il formato della stringa del prompt può essere cambiato dipendentemente
da cercte condizioni. Un punto di domanda (?) seguito da un singolo carattere
si comporta come un "IF": a seconda del carattere successivo, viene valutata
una condizione. Se la condizione è vera, qualsiasi carattere successivo
al punto di domanda ed al carattere che costituisce la condizione, fino
ad un punto, è incluso. Viceversa, se la condizione è falsa, nessun carattere
viene incluso. I due punti (:) tra il punto di domanda ed il punto possono
essere usati come "ELSE": ogni carattere tra i due punti ed il punto è
incluso nella stringa se e solo se la condizione IF è falsa. I caratteri
condizionali (che seguono il punto di domanda) possono essere:
- ?a
- Vero
se sono stati inclusi caratteri nel prompt fino a questo momento.
- ?bX
- Vero se l'offset in byte della riga specificata è conosciuto.
- ?B
- Vero se
la dimensione del file corrente è conosciuta.
- ?e
- Vero se si è alla fine
del file.
- ?f
- Vero se l'input è un file (cioè non è una pipe).
- ?lX
- Vero se
il numero di riga della riga specificata è conosciuto.
- ?L
- Vero se il numero
di riga dell'ultima riga del file è conosciuto.
- ?m
- Vero se c'è più di un
file di input.
- ?n
- Vero se questo è il primo prompt in nuovo file di input
(cioè si è alla prima schermata).
- ?pX
- Vero se la posizione percentuale
all'interno del file della riga specificata è conosciuta.
- ?s
- Come "?B".
- ?x
- Vero se c'è un file di input successivo (cioè se il file corrente non è
l'ultimo).
Qualsiasi carattere diverso da quelli speciali (punto di domanda,
due punti, punto, percentuale e backslash) diventa letteralmente parte
del prompt. Qualsiasi carattere speciale può essere incluso letteralmente
nel prompt precedendolo con un backslash ().
Alcuni esempi:
?f%f:Input
standard.
Questo prompt stampa il nome del file, se è conosciuto; altrimenti
la stringa "Input standard".
?f%f .?ltRiga %lt:?pt%pt\%:?btByte %bt:-...
Questo
prompt stampa il nome del file, se conosciuto. Quest'ultimo è seguito dal
numero di riga, se conosciuto, o altrimenti dalla posizione percentuale,
se conosciuta, o altrimenti dall'offset in byte, se conosciuto. Se anche
questo è ignoto, un segno menu (-) viene visualizzato. Notate come ciascuno
punto di domanda ha un corrispondente punto, e come il segno % dopo il
%pt è incluso letteralmente tramite il backslash.
?n?f%f .?m(file %i of %m) ..?e(END) ?x- Next\: %x..%t
Questo prompt stampa il nome del file se questo è il primo prompt del
file (se cioè vi trovate alla prima schermata), seguito dal messaggio
"file N di N" se c'è più di un file di input. Poi, quando ci si trova alla
fine del file, la stringa "(END" viene visualizzata, seguita dal nome
del file successivo, se c'è. Infine, ogni spazio in più è troncato. Questo
è il prompt di default. Per riferimento, qui ci sono i default per gli
altri due prompt (rispettivamente -m e -M). Ognuno è spezzato in due righe
per questioni di leggibilità.
?n?f%f .?m(file %i of %m) ..?e(END) ?x- Next\: %x.:
?pB%pB\%:byte %bB?s/%s...%t
?f%f .?n?m(file %i of %m) ..?ltline %lt?L/%L. :byte %bB?s/%s. .
?e(END) ?x- Next\: %x.:?pB%pB\%..%t
E qui c'è il messaggio di default prodotto dal comando = :
?f%f .?m(file %i of %m) .?ltline %lt?L/%L. .
byte %bB?s/%s. ?e(END) :?pB%pB\%..%t
Le possibilità di espansione del prompt
sono usate anche per un altro scopo: se una variabile d'ambiente LESSEDIT
è definita, essa è usata come comando da eseguirsi quando il comando v
è chiamato. La stringa LESSEDIT viene espansa nello stesso modo in cui
vengono espanse le stringhe del prompt. Il valore di default per LESSEDIT
è:
%E ?lm+%lm. %f
Notate che questo espande al nome dell'editor, seguito
da un + e dal numero di riga, seguito dal nome del file. Se il vostro editor
non accetta la sintassi "+numerodiriga", o ha una sintassi di chiamata
diversa, la variabile LESSEDIT può essere cambiata per variare questo
default.
- COLUMNS
- Imposta il numero di colonne dello
schermo. Questa variabile ha la precedenza sul numero di colonne specificato
nella variabile TERM. (Ma se avete un sistema a finestre che supporta TIOCGWINSZ
o WIOCGETD, l'idea del sistema a finestre sulla dimensione del vostro schermo
ha la precedenza sulle variabili d'ambiente LINES e COLUMNS.)
- EDITOR
- Il
nome dell'editor (usato per il comando v).
- HOME
- Il nome della home directory
(~) dell'utente (usata per cercare il file .less).
- LANG
- Lingua per la determinazione
del set di caratteri.
- LC_CTYPE
- Lingua per la determinazione del set di
caratteri.
- LESS
- Flag (parametri) che vengono passati a less automaticamente.
- LESSBINFMT
- Formato per la visualizzazione di caratteri non stampabili
e non di controllo.
- LESSCHARDEF
- Definisce un set di caratteri.
- LESSCHARSET
- Seleziona un set di caratteri predefinito.
- LESSCLOSE
- Linea di comando per
chiamare il postprocessore dell'input (opzionale).
- LESSEDIT
- Stringa di prototipo
per l'editor (usata dal comando v). Leggete la discussione sotto PROMPT.
- LESSHELP
- Nome del file di aiuto.
- LESSOPEN
- Linea di comando per chiamare
il preprocessore dell'input (opzionale).
- LINES
- Imposta il numero di righe
dello schermo. Ha la precedenza sul numero di righe specificate nella variabile
d'ambiente TERM.
- SHELL
- Specifica la shell da usare per eseguire il comando
! e per espandere i nomi dei file.
- TERM
- Specifica il tipo di terminale
su cui less sta girando.
- VISUAL
- Specifica il nome dell'editor (usato dal
comando v).
lesskey(1)
Il comando = ed i prompt (se
non sono stati cambiati con l'opzione -P) riportano il numero della riga
in cima allo schermo, ma l'offset in byte e la posizione percentuale della
riga in fondo allo schermo.
Se il comando :e è usato per nominare più di
un file, e uno dei file nominati è già stato visualizzato precedentemente,
i nuovi file potrebbero essere immessi nella lista in ordine pseudo casuale.
Su alcuni terminali vecchi (i cosiddetti terminali "magic cookie"), l'evidenziazione
fatta dalla funzione di ricerca causa una visualizzazione scorretta. Su
questi terminali, l'evidenziazione è disabilitata di default per evitare
eventuali problemi.
In alcuni casi, quando l'evidenziazione è abilitata
ed il modello di ricerca inizia con un ^, la stringa evidenziata è più
ampia di quella effettivamente corrispondente al modello.
Copyright (c) 1984,1985,1989,1994,1995 Mark Nudelman
Traduzione in italiano
di
Michele Beltrame, mentat@italpro.com
Settembre 1996
Table of Contents
|