Come posso visualizzare i file compressi con gzip in meno senza dover digitare zless?


33

Sto usando Ubuntu e vorrei poter digitare less compressed_text_file.gze sfogliare il contenuto del file di testo in forma non compressa. C'è un modo per fare questo?

Risposte:


29

È possibile configurare le scorciatoie da tastiera e impostare numerose impostazioni per lessin un file chiamato ~/.lesskey. Dopo aver creato il file, esegui il lesskeycomando ; genera un file chiamato ~/.lessche lesslegge all'avvio.

L'impostazione desiderata è LESSOPEN. È un formattatore di input per meno. Il lesspacchetto include un formatter di esempio in /bin/lesspipe; decomprime i file compressi con gzip, mostra elenchi di contenuti per molti formati di archivio multi-file e converte diversi formati di testi formattati in testo semplice. Nel tuo ~/.lesskey:

#env
LESSOPEN=|/bin/lesspipe %s

40

Usa zcat, quindi esegui il pipe a less.

$ zcat $FILE | less

2
Preferirei se lesslavorassi solo su file compressi.
Ryan C. Thompson,

4
A differenza della risposta accettata, questa è una soluzione pulita e semplice. Grazie!
Pavel Vlasov,

È semplicissimo, vinci. Una cosa da tenere a mente è che se si apre un file di grandi dimensioni con meno, si apre immediatamente in modo utilizzabile. Con questo approccio, si aprirà ma non sarai in grado di fare molto (se non altro) fino a quando la compressione non avrà terminato l'esecuzione nel tubo. Quindi, se hai intenzione di aprirlo ripetutamente, è meglio decomprimerlo prima. Altrimenti, fai questo e controlla le tue e-mail o qualcosa di simile :)
Max Williams

2

Sto usando IBM e quando si usa zcat, si lamenterà che non riesce a trovare il file che termina con .Z.

Su IBM è possibile utilizzare gzcat:

$ gzcat log_file.gz | less

Cosa intendi con "utilizzo di IBM"? Intendi AIX?
Duncan X Simpson,

L'uso gzcatè necessario anche su Solaris 5
John,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.