Come Leggere File di Grandi Dimensioni su Linux con Facilità

Leggi Grandi File Su Linux Immagine di Carattere

Vuoi setacciare un enorme file di log, file di testo o dataset? Non sei solo. Leggere file di grandi dimensioni su Linux può essere una sfida quando desideri visualizzare e gestire i contenuti senza sopraffare le risorse del tuo sistema. Tuttavia, ci sono diversi approcci che puoi utilizzare per leggere file di grandi dimensioni su Linux, come usare il comando less, Vim, o suddividere il documento in porzioni più piccole e altro ancora.

In questo articolo, impareremo come leggere file di grandi dimensioni o trovare informazioni specifiche su Linux utilizzando vari metodi.

Indice

  • Utilizzo del Comando Less
  • Suddividere il File Utilizzando il Comando Split
  • Utilizzo del Midnight Commander
  • Utilizzo di Klogg
  • Leggere Grandi File Utilizzando un Editor di Testo
  • Cercare nel File con il Comando Grep
  • Utilizzo dei Comandi Head e Tail

Utilizzo del Comando Less

Cerchi uno strumento Linux leggero per visualizzare il contenuto di grandi file di testo o eseguire ricerche rapide? Non cercare oltre il comando less.

Amo questa utility perché, a differenza dei normali editor di testo, ti consente di visualizzare i file una pagina alla volta senza caricare l’intero file in memoria. Questo lo rende più veloce, soprattutto per file di grandi dimensioni, e ti aiuta a rivedere facilmente documenti lunghi o log.

Per utilizzarlo, digita semplicemente less seguito dal nome del file:

less nomefile.txt

Questo aprirà l’interfaccia di less, dove puoi scorrere il file riga per riga utilizzando i tasti freccia o cercare termini specifici premendo / seguito dalla tua query.

Puoi anche usare less per leggere gli output di altri comandi usando un operatore pipeline. Ad esempio, per leggere e visualizzare l’output del comando ls, usa:

ls -l | less

Lettura output comando ls nella finestra del terminale.

Inoltre, il comando less ha diverse opzioni per modificare il suo comportamento. Puoi combinare queste opzioni per ottimizzare il modo in cui funziona less.

Ad esempio, puoi utilizzare l’opzione -p con less per cercare un pattern specifico:

ls -l | less -p "esempio"

Trova un pattern specifico in un file particolare su Linux.

Questo comando apre l’output e salta alla prima occorrenza della parola esempio.

Puoi anche visualizzare i numeri di riga accanto al contenuto del file utilizzando l’opzione -N:

ls -l | less -N

Numerazione output del comando nell'interfaccia utility di less.

Suddividere il File Utilizzando il Comando Split

A volte, suddividere un grande file in porzioni più piccole è il miglior approccio, specialmente quando vuoi elaborare o leggere il file in sezioni gestibili. Ad esempio, suddivido il file in porzioni ogni volta che la sua dimensione supera 1 GB o contiene più di 100 milioni di righe.

Puoi suddividere i file per dimensione o per conteggio di righe. Se stai lavorando con testo, è meglio suddividere per righe per evitare di tagliare righe o parole a metà.

Ad esempio, per suddividere un file in base a un numero specificato di righe, esegui questo comando:

split -l 10000 filecampione.txt parte_

Suddivisione di file in porzioni più piccole utilizzando il comando split.

In questo esempio, il file “filecampione.txt” viene suddiviso in più file, ciascuno contenente 10.000 righe. I file risultanti verranno nominati “parte_aa”, “parte_ab” e così via. Ora puoi aprire e leggere porzioni più piccole del file senza preoccuparti dell’uso della memoria o dei rallentamenti del sistema.

Se desideri suddividere file di grandi dimensioni in base alla dimensione, come 100 MB, puoi eseguire questo comando:

split -b 100M filecampione.txt parte_

Utilizzo del Midnight Commander

Midnight Commander (MC) è un gestore di file basato su testo a doppio pannello che fornisce un’interfaccia visiva intuitiva per navigare tra directory e file.

MC ti consente di visualizzare i file direttamente nell’interfaccia, permettendoti di scorrere rapidamente grandi log o dati senza caricare l’intero file in memoria. Ciò che mi piace di MC è la sua modalità fluida ed efficiente di scorrimento attraverso file di grandi dimensioni.

Per installare MC, esegui semplicemente:

sudo apt install mc

Puoi avviarlo eseguendo mc nel terminale. Una volta all’interno, puoi navigare verso il grande file che vuoi leggere e visualizzarne il contenuto.

Visualizzare un grande file sull'utility midnight commander.

Utilizzo di Klogg

Klogg è un visualizzatore di log GUI veloce e open-source che può gestire senza sforzo file di grandi dimensioni. A differenza di altri editor, che caricano l’intero file in memoria, legge solo le porzioni necessarie del file, riducendo l’uso della memoria.

Klogg offre anche capacità di filtraggio e ricerca in tempo reale, rendendo facile trovare ciò che stai cercando senza scorrere eccessivamente.

Prima di installare Klogg, devi prima creare la directory “/etc/apt/keyrings” e aggiungere la chiave GPG. La chiave GPG è necessaria per verificare il repository del pacchetto Klogg.

Per creare la directory, esegui:

sudo mkdir -p /etc/apt/keyrings

Ora, aggiungi la chiave GPG:

curl -sS https://klogg.filimonov.dev/klogg.gpg.key | gpg --dearmor | sudo tee /etc/apt/keyrings/klogg.gpg

Successivamente, devi aggiungere il repository Klogg al tuo sistema usando il comando curl:

curl -sS https://klogg.filimonov.dev/deb/klogg.jammy.list | sudo tee /etc/apt/sources.list.d/klogg.list

Aggiorna l’elenco dei pacchetti:

sudo apt update

Infine, puoi installare Klogg con questo:

sudo apt install klogg

Installazione di Klogg su Ubuntu.

Una volta installato, apri semplicemente il file tramite l’interfaccia e utilizza le sue funzionalità integrate per cercare e navigare attraverso i contenuti.

Lettura di un grande file su Klogg.

Leggere Grandi File Utilizzando un Editor di Testo

La maggior parte degli editor di testo ha difficoltà con file di grandi dimensioni, ma editor come Vim o Emacs gestiscono file di grandi dimensioni meglio rispetto a editor standard come Nano o Gedit.

Ad esempio, Vim ha funzionalità che ti consentono di navigare rapidamente nel file e cercare termini specifici senza caricare tutto in memoria contemporaneamente. Tuttavia, le ricerche sono limitate alle porzioni già caricate.

Per aprire un file in Vim, esegui:

vim filecampione.txt

Nota: Sebbene Vim possa gestire file di grandi dimensioni in modo più efficace, non è comunque lo strumento più veloce. Per visualizzazioni rapide, è generalmente più efficiente utilizzare il comando less o gli strumenti specializzati menzionati in precedenza.

Cercare nel File con il Comando Grep

Se il tuo obiettivo è trovare informazioni specifiche all’interno di un grande file, prova a utilizzare il comando grep. Ti consente di cercare all’interno dei file e di outputare solo le righe che corrispondono alla tua query di ricerca.

Quando reindirizzi l’output dei comandi in less, è temporaneo: una volta chiuso less, l’output scompare. Se vuoi mantenere l’output per dopo, reindirizzalo a un file e aprilo con uno strumento da riga di comando come less.

Ad esempio, per stampare ogni riga contenente la parola “ERROR” da un grande file, esegui:

grep "Error" filecampione.txt

Puoi affinare la tua ricerca con opzioni aggiuntive, come ignorare la sensibilità alle maiuscole (grep -i) o cercare solo parole intere (grep -w).

Reindirizzare l’output a un file

Se desideri salvare informazioni specifiche per dopo, puoi reindirizzare l’output dei tuoi comandi a un nuovo file.

Ad esempio, puoi cercare righe usando il comando grep e salvarle in un nuovo file:

grep "Error" filecampione.txt > errori.log

L’operatore > crea un nuovo file o lo sovrascrive ogni volta. Tuttavia, se desideri aggiungere dati a un file già presente, utilizza >> anziché l’operatore >.

Utilizzo dei Comandi Head e Tail

A volte, lavorando con grandi file su Linux, potresti aver bisogno di visualizzare solo l’inizio o la fine del file. Per fare ciò, puoi usare i comandi head o tail.

Puoi visualizzare le prime 20 righe di un file con questo:

head -n 20 filecampione.txt

Visualizzazione delle prime venti righe di grandi file su Linux.

Analogamente, per visualizzare le ultime 20 righe, esegui:

tail -n 20 filecampione.txt

In entrambi i casi, -n 20 specifica che desideri vedere solo le prime o le ultime 20 righe. Puoi aggiustare questo numero per visualizzare più o meno righe è necessario. Per impostazione predefinita, entrambi i comandi mostrano 10 righe.

Puoi anche combinare tail e head per navigare attraverso una porzione specifica del file. Ad esempio, per vedere le righe da 10 a 14 di un file di 100 righe, calcola la riga di partenza dalla fine sottraendo la riga di partenza meno uno dal numero totale di righe (100 - 9 = 91). Quindi, usa questo comando:

tail -n 91 filecampione.txt | head -n 5

Questo mostrerà le righe da 10 a 14. Puoi confermare l’output confrontandolo con ciò che vedresti utilizzando less.

Se stai monitorando un file che si aggiorna costantemente, come un file di log, usa tail -f per seguire le modifiche in tempo reale.

Conclusione

Che tu stia esaminando log, lavorando con dataset o visualizzando un grande file di testo, questi metodi rendono il processo semplice ed efficiente. Puoi anche imparare come trovare file di grandi dimensioni su Linux e come trasferirli in un’altra posizione nel terminale.