GNU/Linux >> Linux Esercitazione >  >> Linux

Iniziare con il comando cat di Linux

Gatto è uno strumento abbastanza semplice progettato per concatenare e scrivere file sullo schermo, noto come output standard (stdout). Fa parte di GNU Core Utils rilasciato con licenza GPLv3+. Puoi aspettarti di trovarlo praticamente in qualsiasi distribuzione Linux o altro ambiente operativo Unix, come FreeBSD o Solaris. L'uso più semplice di cat è mostrare il contenuto di un file. Ecco un esempio con un file chiamato hello.world :

$ ls
hello.world
$ cat hello.world
Hello World!

$

Il terminale Linux

  • I 7 migliori emulatori di terminale per Linux
  • 10 strumenti da riga di comando per l'analisi dei dati in Linux
  • Scarica ora:cheat sheet SSH
  • Cheat sheet sui comandi avanzati di Linux
  • Esercitazioni sulla riga di comando di Linux

Il modo più comune in cui uso il gatto il comando serve per visualizzare i file di configurazione, come quelli in /etc directory. Il gatto comando visualizzerà un file senza rischiare di danneggiarlo. Se apro un file di configurazione critico utilizzando un editor come Vi o Nano, potrei inavvertitamente apportare modifiche indesiderate al file. Il gatto command non è un editor e quindi non comporta alcun rischio di apportare modifiche al contenuto di un file.

Se devo visualizzare un file più lungo, posso utilizzare una pipe con altro comando:

$ cat <somelongfile> | more

Gatto può visualizzare più file contemporaneamente. Se vogliamo vedere due file:hello.world e arrivederci.world —includeremmo entrambi i nomi dei file come argomenti nel comando:

$ cat hello.world goodbye.world
Hello World!

Good Bye World!

$

Gatto può anche numerare le righe di un file durante l'output. Ci sono due comandi per farlo, come mostrato nella documentazione della guida:

-b, --number-nonblank    number nonempty output lines, overrides -n
-n, --number             number all output lines

Se utilizzo -b comando con hello.world file, l'output sarà numerato in questo modo:

$ cat -b hello.world
     1  Hello World!

$

Nell'esempio sopra, c'è una riga vuota. Possiamo determinare il motivo per cui questa riga vuota viene visualizzata utilizzando -n argomento:

$ cat -n hello.world
     1  Hello World!
     2
$

Ora vediamo che c'è una riga vuota in più. Questi due argomenti stanno operando sull'output finale piuttosto che sul contenuto del file, quindi se dovessimo usare il -n opzione con entrambi i file, la numerazione conteggerà le righe come segue:

$ cat -n hello.world goodbye.world
     1  Hello World!
     2 
     3  Good Bye World!
     4
$

Un'altra opzione che può essere utile è -s per comprimi il vuoto . Questo argomento dice a cat per ridurre l'output di righe vuote ripetute fino a una riga. Ciò è utile durante la revisione di file con molte righe vuote, poiché si adatta efficacemente a più testo sullo schermo. Supponiamo di avere un file con tre righe distanziate da diverse righe vuote, come in questo esempio, greetings.world :

$ cat greetings.world
Greetings World!




Take me to your Leader!




We Come in Peace!
$

Usando i -s l'opzione consente di risparmiare spazio sullo schermo:

$ cat -s greetings.world
Greetings World!

Take me to your Leader!

We Come in Peace!
$

Gatto viene spesso utilizzato per copiare il contenuto di un file in un altro file. Potresti chiederti:"Perché non usare semplicemente cp ?" Ecco come posso creare un nuovo file, chiamato both.files , che contiene il contenuto di ciao e arrivederci file:

$ cat hello.world goodbye.world > both.files
$ cat both.files
Hello World!

Good Bye World!

$

zcat

C'è un'altra variazione sul gatto comando noto come zcat . Questo comando è in grado di visualizzare i file che sono stati compressi con Gzip senza dover decomprimere i file con gunzip comando. Per inciso, questo preserva anche lo spazio su disco, che è l'intero motivo per cui i file sono compressi!

Lo zcat command è un po' più eccitante perché può far risparmiare molto tempo agli amministratori di sistema che trascorrono molto tempo a rivedere i file di registro di sistema. Dove possiamo trovare i file di registro compressi? Dai un'occhiata a /var/log sulla maggior parte dei sistemi Linux. Sul mio sistema, /var/log contiene diversi file, come syslog.2.gz e syslog.3.gz . Questi file sono il risultato del sistema di gestione dei registri, che ruota e comprime i file di registro per risparmiare spazio su disco e impedire che i registri crescano fino a dimensioni di file ingestibili. Senza zcat , dovrei decomprimere questi file con gunzip comando prima di visualizzarli. Per fortuna, posso usare zcat :

$ cd /var/log
$ ls *.gz
syslog.2.gz  syslog.3.gz
$
$ zcat syslog.2.gz |more
Jan 30 00:02:26 workstation systemd[1850]: Starting GNOME Terminal Server...
Jan 30 00:02:26 workstation dbus-daemon[1920]: [session uid=2112 pid=1920] Successful
ly activated service 'org.gnome.Terminal'
Jan 30 00:02:26 workstation systemd[1850]: Started GNOME Terminal Server.
Jan 30 00:02:26 workstation org.gnome.Terminal.desktop[2059]: # watch_fast: "/org/gno
me/terminal/legacy/" (establishing: 0, active: 0)
Jan 30 00:02:26 workstation org.gnome.Terminal.desktop[2059]: # unwatch_fast: "/org/g
nome/terminal/legacy/" (active: 0, establishing: 1)
Jan 30 00:02:26 workstation org.gnome.Terminal.desktop[2059]: # watch_established: "/
org/gnome/terminal/legacy/" (establishing: 0)
--More--

Possiamo anche passare entrambi i file a zcat se vogliamo esaminarli entrambi senza interruzioni. A causa del funzionamento della rotazione del registro, è necessario passare i nomi dei file in ordine inverso per preservare l'ordine cronologico dei contenuti del registro:

$ ls -l *.gz
-rw-r----- 1 syslog adm  196383 Jan 31 00:00 syslog.2.gz
-rw-r----- 1 syslog adm 1137176 Jan 30 00:00 syslog.3.gz
$ zcat syslog.3.gz syslog.2.gz |more

Il gatto il comando sembra semplice ma è molto utile. Lo uso regolarmente. Inoltre, non è necessario dargli da mangiare o accarezzarlo come un vero gatto. Come sempre, ti suggerisco di rivedere le pagine man (man cat ) per il gatto e zcat comandi per saperne di più su come può essere utilizzato. Puoi anche utilizzare la --help argomento per una rapida sinossi degli argomenti della riga di comando.


Linux
  1. Pianificazione delle attività con il comando cron di Linux

  2. Pianifica un'attività con il comando Linux at

  3. Iniziare con il comando tac di Linux

  4. Iniziare con PostgreSQL su Linux

  5. Introduzione a SSH in Linux

Utilizzo di Cat Command in Linux con esempi

Introduzione al sistema operativo Linux

Tutorial Vagrant – Introduzione a Vagrant in Linux

Introduzione a VirtualBox in Linux – Parte 1

Guida introduttiva agli esempi di comandi di Alpine Linux Apk

Guida introduttiva al comando Tar