Come combinare file di testo usando il comando "cat" in Linux

00_lead_image_concatenating_files

Il comando cat è molto utile in Linux. Ha tre funzioni principali legate alla manipolazione dei file di testo: crearli, visualizzarli e combinarli.

RELAZIONATO: Come creare rapidamente un file di testo utilizzando la riga di comando in Linux

Abbiamo discusso usando il comando cat (tra gli altri) per creare e visualizzare file di testo sulla riga di comando in Linux. Ma supponiamo che tu abbia tre file di testo: file1.txt, file2.txt e file3.txt. Vuoi combinare (o concatenare) in un unico file di testo contenente le informazioni di tutti e tre, in questo ordine. Puoi farlo anche con il comando cat.

Basta aprire un Terminale e digitare il seguente comando:

cat file1.txt file2.txt file3.txt

Ovviamente, sostituisci i nomi dei file nell'esempio sopra con i tuoi.

I contenuti combinati dei tre file di testo appariranno nel tuo terminale.

01_basic_cat_command

RELAZIONATO: Diventa un utente Linux Power Terminal con questi 8 trucchi

In genere, tuttavia, probabilmente vorrai combinare quei file di testo in un altro file di testo, non solo stampare i risultati sullo schermo. Fortunatamente, questo è molto semplice. Tutto quello che devi fare è aggiungere un simbolo di reindirizzamento dell'output (>) dopo l'elenco dei file concatenati, quindi specificare il nome del file di testo finale.

cat file1.txt file2.txt file3.txt > file4.txt

NOTA: il file elencato dopo il simbolo di reindirizzamento dell'output verrà sovrascritto, se esiste già. Quindi, fai attenzione quando specifichi il nome del file di testo combinato. Ti mostreremo più avanti in questo articolo come aggiungere file alla fine di un file esistente.

Se apri file4.txt (con il comando cat o con l'editor di testo di tua scelta), dovresti trovare che contiene il testo dei primi tre file di testo.

02_redirecting_cat_command

Se stai combinando elenchi di elementi di più file e li desideri in ordine alfabetico nel file combinato, puoi ordinare gli elementi combinati nel file risultante. Per fare ciò, inserisci la base cat comando che ti abbiamo mostrato in precedenza seguito dal comando pipe (|) e dal sort comando. Quindi, digitare il simbolo di reindirizzamento dell'output (>) seguito dal nome del file in cui si desidera copiare il testo combinato. Tutte le righe di testo nel file dei risultati verranno ordinate in ordine alfabetico.

cat file1.txt file2.txt file3.txt | sort > file4.txt

03_concatenating_and_sorting

Come accennato in precedenza, esiste anche un modo per aggiungere file alla fine di un file esistente. Digitare il cat comando seguito dal file o dai file che si desidera aggiungere alla fine di un file esistente. Quindi, digitare due simboli di reindirizzamento dell'output (>>) seguito dal nome del file esistente che si desidera aggiungere.

cat file5.txt >> file4.txt

04_appending_a_file_to_end_of_existing_file

Se si desidera aggiungere un po 'di nuovo testo a un file di testo esistente, utilizzare il cat comando per farlo direttamente dalla riga di comando (invece di aprirlo in un editor di testo). Digitare il cat comando seguito dal simbolo di reindirizzamento a doppia uscita (>>) e il nome del file a cui si desidera aggiungere del testo.

cat >> file4.txt

Un cursore apparirà sulla riga successiva sotto il prompt. Inizia a digitare il testo che desideri aggiungere al file. Al termine, premi Invio dopo l'ultima riga, quindi premi Ctrl + D per copiare quel testo alla fine del file ed esci da cat.

05_appending_a_line_from_the_standard_output

RELAZIONATO: Come ottenere aiuto con un comando dal terminale Linux: 8 trucchi per principianti e professionisti allo stesso modo

Se si finisce con un file molto lungo dopo aver combinato i file di testo, è possibile utilizzare il simbolo pipe con il comando less quando si visualizza il file nella finestra Terminale. Per esempio, cat file4.txt | less. Discuteremo usando il comando less in questo articolo.

Articoli correlati

Ultimi articoli