Introduzione
Se hai lavorato in Linux, avrai sicuramente visto uno snippet di codice che utilizza il cat
comando. Cat è l'abbreviazione di concatenare. Questo comando mostra il contenuto di uno o più file senza dover aprire il file per la modifica.
In questo articolo, scopri come utilizzare il cat
comando in Linux.

Prerequisiti
- Un sistema che esegue Linux
- Accesso a una finestra di terminale/riga di comando
Sintassi del comando cat
Per utilizzare il cat
comando, segui il formato:
cat [options] filename(s)
[options]
– Ciò ti consente di impartire istruzioni aggiuntive al cat
comando. Ad esempio, per visualizzare il contenuto di un file con ciascuna riga numerata, utilizzare il –n
opzione:
cat –n filename
filename(s)
– Specificare il nome del file (o dei file) che si desidera visualizzare. Se utilizzi più di un nome file, verrà visualizzato ciascun file.
Esempi di comandi Linux Cat
Questo articolo include 15 cat
comandi ed esempi di come usarli. Per provare i comandi, crea un paio di file di esempio e prova i comandi cat elencati di seguito.
1. Crea un nuovo file
Puoi creare nuovi file e aggiungervi contenuti utilizzando il cat
comando.
Crea test1.txt e test2.txt , che puoi utilizzare come file di esempio per testare gli altri comandi.
1. Apri una finestra di terminale e crea il primo file:
cat >test1.txt
2. Il cursore si sposta su una nuova riga in cui è possibile aggiungere il testo desiderato. Digita una frase semplice come:
This is test file #1.
3. Per uscire dal prompt e scrivere le modifiche al file, tieni premuto Ctrl e premi d .

4. Ripetere la procedura per creare test2.txt . Corri:
cat >test2.txt
5. Digitare:
This is test file #2.
6. Premi Ctrl+d .

2. Visualizza il contenuto di un singolo file
Per visualizzare il contenuto di test1.txt utilizzando il cat
comando eseguito:
cat test1.txt
L'output mostra il contenuto come nell'immagine sottostante.

3. Visualizza il contenuto di più file
Per visualizzare il contenuto di entrambi i file, esegui il comando:
cat test1.txt test2.txt

4. Reindirizza il contenuto di un singolo file
Invece di visualizzare il contenuto di un file sullo schermo, cat
puoi metterli in un file.
cat test1.txt > test3.txt
Se il nome del file di destinazione non esiste, verrà creato. Se esegui cat
su test3.txt , dovresti vedere i contenuti di test1.txt :
cat test3.txt
L'output visualizza:

Se viene esportato un file già esistente, questo sovrascriverà il contenuto del file :
cat test2.txt > test3.txt
cat test3.txt
Il file test3.txt ora ha il seguente contenuto:

5. Reindirizza il contenuto di più file
Puoi reindirizzare il contenuto di più file in un unico file:
cat test1.txt test2.txt > test3.txt
Visualizza il contenuto di test3.txt con:
cat test3.txt
L'output mostra il contenuto di entrambi i file, come nell'immagine sottostante.

6. Visualizza i contenuti in ordine inverso
Il cat
comando può visualizzare il contenuto di un file in ordine inverso (per righe). Per farlo, usa tac
(gatto al contrario):
tac test3.txt

7. Aggiungi il contenuto del file a un altro file
Il cat
comando può aggiungere il contenuto di un file alla fine di un altro file. Invece di utilizzare un singolo >
segno, usa un doppio >>
firmare:
cat test1.txt >> test3.txt
Apri il test3 file eseguendo:
cat test3.txt
Il contenuto di test3 seguito da test1 dovrebbe essere visualizzato.

8. Aggiungi testo al file esistente
Puoi usare un comando simile per aggiungere del testo a un file esistente:
cat >> test1.txt
Aggiungi una nuova riga al file:
This is the second line in test file #1.
Tieni premuto Ctrl e premi d .
Controlla il contenuto del test1.txt file:
cat test1.txt

9. Combina operazioni
Le funzioni del cat
comando può essere combinato. Ad esempio, per combinare l'output di due file e archiviare il risultato in un nuovo file:
cat test1.txt test2.txt > test4.txt
cat test4.txt

In alternativa, puoi aggiungere più file alla fine di un file esistente:
cat test2.txt test1.txt >> test4.txt
cat test4.txt

Si noti che l'ordine specificato è l'ordine in cui i file vengono aggiunti al file di destinazione.
10. Più e meno opzioni (Gestisci file di grandi dimensioni)
Se usi cat
su un file molto grande, ti ritroverai con un'enorme stringa di dati difficile da leggere. Puoi suddividerlo in pagine usando | more
:
cat test4.txt | more
Viene visualizzata una singola pagina del file. Quando si preme un tasto, si scorrerà alla pagina successiva.
Se desideri la possibilità di scorrere avanti e indietro nel display, utilizza | less
.
cat test4.txt | less
11. Mostra numerazione riga
Potrebbe essere utile avere numeri di riga nell'output, specialmente per file di grandi dimensioni. Per abilitare la numerazione delle righe, aggiungi il -n
opzione per il cat
comando:
cat –n test1.txt
L'output dovrebbe apparire come nell'immagine seguente:

12. Mostra la fine della riga
Puoi indicare a cat di evidenziare la fine di ogni riga e gli spazi tra le righe con $ .
Per farlo, usa il comando:
cat -e test1.txt
Dal momento che il file di esempio test1.txt ha una sola riga, l'output mostra un $ alla fine.

13. Mostra le righe separate da TAB
Il cat
comando ha la possibilità di visualizzare il contenuto del file insieme allo spazio di tabulazione all'interno del testo.
Per mostrare le righe separate da tabulazioni per un'analisi di esempio:
cat -t test4.txt
Lo spazio di tabulazione all'interno del testo è rappresentato da ^I.
14. Rimuovi le righe vuote
Per omettere le righe vuote dall'output di cat con –s
opzione:
cat -t test4.txt
15. Elenca tutti i comandi CAT
Se hai problemi a ricordare le opzioni, usa il --help
comando:
cat ––help
