GNU/Linux >> Linux Esercitazione >  >> Linux

10 fantastici esempi per la visualizzazione di enormi file di registro in Unix

La visualizzazione di file di registro di grandi dimensioni per la risoluzione dei problemi è un'attività di routine banale per amministratori di sistema e programmatori.

In questo articolo, esaminiamo come visualizzare e manipolare in modo efficace file di registro di grandi dimensioni utilizzando 10 fantastici esempi.

Esempio 1:visualizzare righe specifiche (in base al numero di riga) di un file utilizzando il comando sed

Visualizza solo le righe specifiche indicate dai numeri di riga.

Syntax: $ sed -n -e Xp -e Yp FILENAME
  • sed :comando sed, che stamperà tutte le righe per impostazione predefinita.
  • -n :Sopprime l'output.
  • -e CMD :Comando da eseguire
  • Xp:stampa il numero di riga X
  • Yp:stampa il numero di riga Y
  • FILENAME :nome del file da elaborare.

L'esempio menzionato di seguito stamperà le righe 120, 145, 1050 dal syslog.

$ sed -n -e 120p -e 145p -e 1050p /var/log/syslog

Nell'esempio seguente, puoi visualizzare il contenuto di var/log/cron dalla riga numero 101 a 110.

  • M – Numero di riga iniziale
  • N – Numero riga finale
Syntax: sed -n M,Np FILENAME

$ sed -n 101,110p /var/log/cron

Esempio 2:Visualizza le prime N righe di un file usando il comando head

Questo esempio mostra solo le prime 15 righe del file /var/log/maillog. Cambia da 15 a 10 per visualizzare le prime 10 righe di un file di registro.

Syntax: head -n N FILENAME

$ head -n 15 /var/log/maillog

Esempio 3:ignora le ultime N righe di un file usando il comando head

Questo esempio mostra come ignorare le ultime N righe e mostrare solo le righe rimanenti dall'inizio del file.

L'esempio seguente mostrerà tutte le righe di /var/log/secure tranne le ultime 250 righe.

Syntax: head -n -N FILENAME

$ head -n -250 /var/log/secure

Esempio 4:Visualizza le ultime N righe del file usando il comando tail

Questo esempio mostra solo le ultime 50 righe del file /var/log/messages. Cambia da 50 a 100 per visualizzare le ultime 100 righe del file di registro.

Syntax: tail -n N FILENAME

$ tail -n 50 /var/log/messages

Esempio 5:ignora le prime N-1 righe del file usando il comando tail

Questo esempio mostra come ignorare le prime N-1 righe e mostrare solo le righe rimanenti.

L'esempio seguente ignora le prime quattro righe di /etc/xinetd.conf, che contiene solo i commenti.

Syntax: tail -n +N FILENAME

$ tail -n +5 /etc/xinetd.conf
defaults
{
        instances               = 60
        log_type                = SYSLOG authpriv
        log_on_success          = HOST PID
        log_on_failure          = HOST
        cps                     = 25 30
}
includedir /etc/xinetd.d

Esempio 6:visualizza il file di registro in crescita in tempo reale utilizzando il comando tail

Questo è probabilmente uno dei comandi più utilizzati dagli amministratori di sistema. Per visualizzare un file di registro in crescita e vedere solo i contenuti più recenti, usa tail -f come mostrato di seguito.

L'esempio seguente mostra il contenuto del comando /var/log/syslog in tempo reale.

Syntax: tail -f FILENAME

$ tail -f /var/log/syslog

Esempio 7:visualizzare righe specifiche (in base al numero di riga) di un file utilizzando il comando head and tail

L'esempio seguente mostrerà i numeri di riga 101 – 110 del file /var/log/anaconda.log

  • M – Numero di riga iniziale
  • N – Numero riga finale
Syntax: cat file | tail -n +N | head -n (M-N+1)

$ cat /var/log/anaconda.log | tail -n +101 | head -n 10
  • cat :stampa l'intero file sullo stdout.
  • tail -n +101 :ignora le righe fino al numero di riga specificato, quindi inizia a stampare le righe dopo il numero specificato.
  • head -n 10 :stampa le prime 10 righe, ovvero da 101 a 110 e ignora le righe rimanenti.

Esempio 8:mostra le righe che corrispondono a uno schema e poche righe che seguono la corrispondenza.

L'esempio seguente mostra la riga che corrisponde a "Inizializzazione CPU" da /var/log/dmesg e 5 righe immediatamente dopo questa corrispondenza.

# grep "Initializing CPU#1" /var/log/dmesg
Initializing CPU#1
[Note: The above shows only the line matching the pattern]

# grep -A 5 "Initializing CPU#1" dmesg
Initializing CPU#1
Calibrating delay using timer specific routine.. 3989.96 BogoMIPS (lpj=1994982)
CPU: After generic identify, caps: bfebfbff 20100000 00000000 00000000
CPU: After vendor identify, caps:  bfebfbff 20100000 00000000 00000000
monitor/mwait feature present.
CPU: L1 I cache: 32K, L1 D cache: 32K
[Note: The above shows the line and 5 lines after the pattern matching]

Fai riferimento al nostro articolo precedente Prendi una presa sul Grep! – 15 Esempi pratici di comandi Grep che spiegano come utilizzare il comando grep.

Come spiegato nel nostro precedente articolo sul comando grep, sono possibili le seguenti operazioni.

  • Visualizzazione di linee specifiche identificate da pattern, che è la funzionalità predefinita di grep.
  • Visualizzazione solo dei caratteri corrispondenti.
  • Visualizzazione di N righe dopo la corrispondenza con l'opzione -A.
  • Visualizzazione di N righe prima della corrispondenza con l'opzione -B.
  • Visualizzazione di N righe attorno alla corrispondenza con l'opzione -C.

Esempio 9:visualizzazione di byte specifici da un file.

L'esempio seguente spiega come visualizzare i primi 40 o gli ultimi 30 byte di un file.

Visualizza i primi 40 byte dal syslog.

$ head -c40 /var/log/syslog

Visualizza gli ultimi 30 byte dal syslog.

$ tail -c30 /var/log/syslog

Esempio 10:visualizzazione di file di registro compressi

Dopo un tempo specifico, tutti i file di registro di sistema vengono ruotati e compressi. Puoi decomprimerlo al volo e reindirizzare l'output a un altro comando unix per visualizzare il file come spiegato di seguito.

Fare riferimento al nostro precedente articolo Il potere dei comandi Z:esempi Zcat, Zless, Zgrep, Zdiff

  • Visualizza le prime N righe di un file compresso.
    $ zcat file.gz | head -250
  • Visualizza le ultime N righe di un file compresso.
    $ zcat file.gz | tail -250
  • Ignora le ultime N righe di un file compresso.
    $ zcat file.gz | head -n -250
  • Ignorando le prime N righe di un file compresso.
    $ zcat file.gz | tail -n +250
  • Visualizzazione delle linee che corrispondono al modello
    $ zcat file.gz | grep -A2 'error'
  • Visualizzazione di un particolare intervallo di righe identificato dal numero di riga.
    $ zcat file.gz | sed -n -e 45p -e 52p

Se devi tornare, aggiungi questa pagina ai segnalibri su del.icio.us per un pratico riferimento.


Linux
  1. Posizioni dei file di registro comuni e dei file di configurazione per i servizi cPanel

  2. File di registro di Linux

  3. Esempi di UNIX ar:come creare, visualizzare, estrarre, modificare file di archivio C (*.a)

  4. 10 Esempi utili di Sar (Sysstat) per il monitoraggio delle prestazioni UNIX/Linux

  5. Linux / UNIX:esempi di comando find per trovare file con set di autorizzazioni specifici

comando ls in Linux/UNIX

15 fantastici esempi per manipolare file audio utilizzando Sound eXchange (SoX)

Papà, l'ho trovato!, 15 fantastici esempi di comandi Trova Linux (Parte 2)

Tutorial Unix Sed:6 esempi per l'operazione di diramazione Sed

Tutorial Unix Sed:7 esempi di operazioni Sed Hold e Pattern Buffer

UNIX / Linux:7 esempi pratici di comandi PS per il monitoraggio dei processi