Come usare il comando cut di Linux
Il comando cut di Linux è utile per visualizzare il contenuto delle righe del file, suddividendo il contenuto come vogliamo. Il comando cut può tagliare le righe per caratteri, in base a un delimitatore o per byte.
Se otteniamo un elenco di email o elementi separati da virgole o spazi possiamo utilizzare il comando cut per leggerne facilmente il contenuto.
Per iniziare creiamo un file
Con contenuto:
Premi ctrl+x per salvare.
Gli indirizzi email falsi sono separati da virgola e spazio, per elencare il contenuto tra virgola è necessario utilizzare il parametro -d (delimitatore), digitare:
mail1@domain1.com
Possiamo anche mostrare più campi è possibile utilizzare anche il parametro 'f, digitare:
mail1@domain1.com, mail2@domain2.com, mail3@domain3.com
With content;
abcdefghijklmn
Ora usiamo il comando per mostrare i primi 4 caratteri in byte, 1 carattere=1 byte:
# cut -b 1,2,3,4 abc
abcd
Il comando cut ci permette di visualizzare intervalli di byte, da visualizzare tra il tipo byte 2 e 7:
bcdefg
Ora creiamo un documento con le parole:
And include words:
word1
word2
word3
word4
word6
word7
Premi ctrl+x per salvare e chiudere l'elenco
Usiamo il comando cut per elencare il quinto carattere di ogni riga:
1
2
3
4
5
6
7
Crea un file chiamato colonne:
With content (separated with TAB,not space):
column1line1 column2line1 column3line1 column4line1
column1line2 column2line2 column3line2 column4line2
column1line3 column2line3 column3line3 column4line3
column1line4 colmun2line4 column3line4 column4line4
Ora usa cut per mostrare il terzo campo digitando:
column3line1
column3line2
column3line3
column3line4
Come vedi cut mostra il contenuto della terza colonna, possiamo visualizzare più di una colonna con un unico ordine:
column1line1 column3line1
column1line2 column3line2
column1line3 column3line3
column1line4 column3line4
Diamo un'occhiata al file /etc/passwd e visualizziamo i suoi segmenti con cut.
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
bin:x:2:2:bin:/bin:/usr/sbin/nologin
sys:x:3:3:sys:/dev:/usr/sbin/nologin
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/usr/sbin/nologin
man:x:6:12:man:/var/cache/man:/usr/sbin/nologin
lp:x:7:7:lp:/var/spool/lpd:/usr/sbin/nologin
mail:x:8:8:mail:/var/mail:/usr/sbin/nologin
news:x:9:9:news:/var/spool/news:/usr/sbin/nologin
uucp:x:10:10:uucp:/var/spool/uucp:/usr/sbin/nologin
proxy:x:13:13:proxy:/bin:/usr/sbin/nologin
www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin
:
# cut -f 1 -d ':' /etc/passwd
root
daemon
bin
sys
sync
games
man
lp
news
uucp
proxy
www-data
backup
list
irc
gnats
nobody
systemd-timesync
systemd-network
systemd-resolve
systemd-bus-proxy
Possiamo visualizzare più di una colonna aggiungendo più campi dopo il parametro 'f:
root:/root
daemon:/usr/sbin
bin:/bin
sys:/dev
sync:/bin
games:/usr/games
man:/var/cache/man
lp:/var/spool/lpd
mail:/var/mail
news:/var/spool/news
uucp:/var/spool/uucp
proxy:/bin
www-data:/var/www
backup:/var/backups
list:/var/list
irc:/var/run/ircd
gnats:/var/lib/gnats
nobody:/nonexistent
systemd-timesync:/run/systemd
Il comando sopra elenca la prima e la sesta colonna separate da ":", vediamo il nome utente dell'utente e la directory home.