GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Comando wc:spiegato con 5 esempi in Ubuntu 20.04 LTS

Il comando wc (conteggio parole) è una delle utilità di base di GNU che apparentemente sembra semplice ma in realtà è un comando piuttosto utile. Come risulta dal nome, conta il numero di righe, parole, caratteri, byte e persino la lunghezza della riga più lunga del file e li stampa sullo standard output. Potresti aver bisogno di questo conteggio per diversi motivi. Ad esempio, puoi utilizzare il conteggio dei caratteri per limitare il numero di caratteri che possono essere inseriti in un post. Allo stesso modo, puoi contare il numero di utenti sul tuo sistema, il numero di pacchetti installati sul tuo sistema, ecc.

In questo articolo, spiegheremo come utilizzare il comando wc in Linux insieme alle opzioni della riga di comando e ad alcuni esempi.

Abbiamo eseguito i comandi sul sistema Ubuntu 20.04 Focal Fossa. Più o meno gli stessi comandi possono essere implementati anche su altre distribuzioni Linux. Abbiamo eseguito i comandi sull'applicazione Terminale predefinita a cui è possibile accedere tramite la scorciatoia da tastiera Ctrl+Alt+T.

Sintassi

Ecco la sintassi di base per il comando wc:

wc [OPTION]... [FILE]...

Se desideri utilizzare più opzioni, puoi aggiungerle senza uno spazio. Mentre per più file, dovresti separarli di un singolo spazio.

Utilizzo di base del comando wc

Quando il comando wc viene utilizzato senza alcuna opzione della riga di comando, restituisce il numero di righe, parole e byte nei file. Per utilizzare il comando wc, digita semplicemente wc seguito dal nome del file di cui vuoi trovare il conteggio.

$ wc testfile.txt

Spiegazione dell'output:

Il comando wc stampa i risultati del conteggio per il file specificato in quattro colonne. La prima colonna mostra il numero di righe nel file, la seconda colonna mostra il numero di parole, la terza colonna mostra il numero di byte e la quarta colonna mostra il nome del file.

Nota:wc stampa solo i conteggi di nuova riga non le righe effettive nel file specificato.

Nell'output del comando precedente, 12 è il numero di righe, 21 è il numero di parole e 116 è il numero di byte nel "testfile.txt".

Se non vuoi stampare il nome del file nel risultato, usa

$ wc < testfile.txt

Conta da più file

Con il comando wc, puoi specificare più file per il conteggio. Il comando wc restituisce il conteggio per ciascuno dei file insieme al conteggio totale alla fine che è la somma del conteggio per ciascun file.

Opzioni

Il comando wc ha alcune opzioni della riga di comando. Diamo un'occhiata a queste opzioni e alle loro funzioni:

Conta il numero di righe

Utilizzo del comando wc con -l o –linee opzione, puoi stampare solo il numero di righe nel file. Ad esempio, il seguente comando stamperà solo il conteggio delle righe nel "testfile.txt":

$ wc -l testfile.txt

Nell'output seguente, 12 è il numero di righe nel "testfile.txt".

Conta il numero di parole

Se devi stampare solo il conteggio delle parole in un file, usa il comando wc con -w o –parole opzione. Ad esempio, il seguente comando stamperà il conteggio delle parole nel "testfile.txt":

$ wc -w testfile.txt

Nell'output successivo, 21 è il numero di parole nel “testfile.txt”.

Conta il numero di byte

Utilizzo del comando wc con -c o –byte opzione, è possibile stampare il numero di byte nel file. Il seguente comando stamperà il conteggio dei byte nel "testfile.txt":

$ wc -c testfile.txt

Nell'output seguente, 116 è il numero di byte nel “testfile.txt”.

Conta il numero di caratteri

Utilizzo del comando wc con -m o –caratteri opzione, è possibile stampare il numero di caratteri nel file. Ad esempio, il seguente comando stamperà solo il conteggio dei caratteri nel "testfile.txt":

$ wc -m testfile.txt

Nell'output seguente, 116 è il numero di caratteri nel file test.txt.

Nota:il conteggio dei byte e il conteggio dei caratteri sono gli stessi per i file in formato ASCII.

Stampa lunghezza della riga più lunga

Se devi stampare la lunghezza della riga più lunga in un file specifico, puoi farlo usando il comando wc con -L o –lunghezza-linea massima opzione. Ad esempio, il seguente comando stamperà la lunghezza della riga più lunga del “testfile.txt”:

$ wc -L testfile.txt

Nell'output seguente, 20 è la lunghezza della linea più lunga.

Visualizza versione

Per visualizzare la versione del comando wc, utilizzare il comando seguente:

$ wc --version

Stampa numero di righe e byte

Puoi anche combinare le opzioni della riga di comando. Ad esempio, per stampare il conteggio delle righe e dei byte, combinare le opzioni -l e -c come segue:

$ wc -lc

Nota:indipendentemente dal fatto che tu esegua -lc o -cl, l'output sarà sempre nello stesso ordine, ovvero conteggio di righe, parole e byte.

Nell'output sopra, 29 è il conteggio delle righe e 782 è il conteggio dei byte nel file "sample.txt".

Memorizza il conteggio in un file

Per salvare l'output del comando wc in un file, utilizzare l'operatore> come segue:

$ wc sample.txt > file_count

Esempio di utilizzo del comando Wc

Diamo un'occhiata ad alcuni degli esempi del comando wc collegandolo ad altri comandi.

Conteggio dei file in qualsiasi directory

Per contare il numero di file in qualsiasi directory, reindirizzare l'output del comando find a wc. Ad esempio, per trovare il numero di file nella directory ~/Downloads, il comando sarebbe:

$ find ~/Downloads/ -type f | wc -l

Il comando find elenca tutti i file nella directory ~/Downloads del tuo sistema che viene quindi reindirizzato al comando wc per ottenere un conteggio.

Conta il numero di utenti

Il comando wc può essere utilizzato anche per contare il numero totale di utenti in un sistema. Per contare il numero di utenti, usa il comando 'geent passwd' e invia il suo output al comando wc come segue:

$ getent passwd | wc –l

Il comando 'geent passwd' elenca tutti gli utenti nel sistema che viene quindi reindirizzato al comando wc per ottenere un conteggio.

Conta il numero di pacchetti installati

Con il comando wc puoi anche contare il numero di pacchetti installati nel tuo sistema. Per contare il numero di pacchetti installati, usa il seguente comando:

$ apt list --installed | wc -l

Il comando "apt list –installed" elenca tutti i pacchetti installati nel sistema che viene quindi reindirizzato al comando wc per ottenere un conteggio.

Conta il numero di una parola particolare in un file

Con il comando wc, puoi contare il numero di una parola particolare in un file. Ad esempio, per trovare quante volte la parola "scienza" è apparsa nel file denominato "campione.txt", il comando sarebbe:

$ grep -o ‘science’ sample.txt | wc -w

In questo esempio, il comando grep cerca l'occorrenza della parola "science" nel file sample.txt che viene quindi reindirizzato al comando wc per ottenere un conteggio.

Conta il numero di caratteri in una riga specifica

Con il comando wc puoi anche trovare il numero di caratteri in una riga specifica. Ad esempio, per trovare il numero di caratteri nella riga 50 del file denominato “sample.txt”, il comando sarebbe:

$ head -50 sample.txt | tail -1 | wc -w

In questo esempio, la testa comando elencherà le prime 50 righe del file sample.txt che viene quindi reindirizzato al comando tail. La "coda -1 Il comando ” filtra quindi l'ultima riga (riga n. 50) del primo output ottenuto dalla testa comando. L'output dalla coda Il comando viene quindi reindirizzato al comando wc per ottenere un conteggio dei caratteri nella riga 50.

Usa uno script per il conteggio

Nell'esempio seguente creeremo uno script che conterà righe, parole e byte in un file. Durante l'esecuzione dello script, passeremo il nome del file come argomento, in modo che tu possa eseguire lo stesso script per tutti i tuoi file.

Crea uno script con le seguenti righe di codice:

#!/bin/bash
echo "File to read:"
read file
echo ""
echo "This file has the following number of:"
echo -n "Lines: "
wc -l < $file
echo -n "Words: "
wc -w < $file
echo -n "Chars: "
wc -c < $file

Ora esegui lo script passando il nome del file come argomento.

$ <./script_name> <path/to/filename>

Ad esempio, per ottenere il conteggio di righe, parole e caratteri per il file denominato "sample.txt", esegui lo script passando sample.txt come argomento:

$ ./script2 sample.txt

Dopo aver eseguito lo script, riceverai un output simile che ti mostra il conteggio delle parole per il tuo file.

Se il file si trova in un'altra posizione diversa dalla directory di lavoro corrente, menziona il percorso completo:

$ ./script2 /etc/passwd

Ecco come puoi usare il comando wc in Linux. In questo articolo, hai appreso le basi del comando wc insieme alle sue opzioni della riga di comando e alcuni esempi pratici. Ora puoi contare facilmente il numero di righe, parole, caratteri e byte nei tuoi file e nell'output di altri comandi.


Ubuntu
  1. Comando di spegnimento di Linux spiegato con esempi

  2. Come gestire i pacchetti con APT su Ubuntu 18.04 LTS

  3. Il comando nslookup Linux spiegato con esempi

  4. Comando Traceroute di Linux, spiegato con esempi

  5. Comando ssh-keygen nel server Linux Ubuntu 20.04 LTS - Spiegato con esempi

Comando IP Linux con esempi

w Comando spiegato con esempi in Linux

Comando 'kubectl get' spiegato con esempi

Comando Linux Cat spiegato con esempi

Spiegazione del comando tee di Linux (con esempi)

Spiegazione del comando csplit di Linux (con esempi)