Esempi di comandi di taglio di Linux

Il comando di taglio di Linux è uno dei comandi utili per lavorare con dati di stringa e contenuto di file. Viene utilizzato principalmente per tagliare il contenuto da dati tabulari o file CSV. Ogni riga del file può essere suddivisa ei dati richiesti possono essere recuperati facilmente usando il comando “cut”. Può anche essere utilizzato per tagliare il testo per delimitatore o carattere o posizione byte. Questo comando ha molte opzioni per tagliare i dati dal testo o dal file in modi diversi. Il modo in cui il comando cut può essere utilizzato con diverse opzioni è mostrato in questo tutorial utilizzando vari esempi.

Sintassi:

cut OPTION. ..…

Il valore OPTION è obbligatorio da usare per il comando `cut` e il nome FILE è opzionale. Se ometti il nome del file nel comando, verranno presi i dati dall’input standard. Ma se ometti il valore OPTION nel comando cut, verrà generato l’errore.

Opzioni:

Tag opzione Descrizione
-b o –byte = LIST Seleziona i byte specifici.
-c o –character = LIST Seleziona i caratteri particolari.
-d o –delimiter = DELIM Seleziona il valore DELIM come delimitatore. Per impostazione predefinita, il delimitatore è TAB.
-f o –fields = LIST Seleziona i campi specifici
–complement Usa per completare l’output
-s o –only-delimited Ometti righe che non contengono delimitatore.
–output-delimiter = STRING Utilizza il valore STRING come delimitatore di output.
-z o –zero-terminated Utilizza NULL come delimitatore di riga.

Esempio-1 : Cut by bytes

Il seguente comando cut taglierà i dati di input standard in base ai byte definiti. Qui, 3,4,5 e 6 sono definiti come byte. L’output verrà generato in base allo standard input. Premi CTRL + D per uscire dal comando.

$ cut -b 3,4,5,6

Output:

qui, l’input è “Mi piace programmare” e l’output è “simile” in base ai byte menzionati.

Crea un file di testo denominato “productlist.txt” con il seguente contenuto per applicare il comando `cut`. Usa TAB per separare i campi del contenuto del file.

ID Nome Prezzo
01 Penna $ 2
02 Penna $ 1.5
03 Gomma $ 1

Esegui il comando seguente per recuperare solo ID prodotto. Qui, i byte vengono forniti come intervallo, “1-2 ′ per tagliare i dati.

$ cut -b 1-2 < productlist.txt

Risultato:

Esempio-2: Taglia per caratteri

Puoi generare lo stesso output usando l’opzione -c, quelli sono mostrati negli esempi precedenti. Quindi, non c’è nessuna differenza particolare tra l’output di -b e – c opzioni del comando di taglio. Eseguire il comando seguente per mostrare l’uso dell’opzione -c. Qui, 4- viene utilizzato come valore dell’opzione che taglierà dalla posizione 4 a tutti i caratteri rimanenti di ogni riga. Puoi anche utilizzare il segno negativo davanti al valore come -4, quindi verrà tagliato dall’inizio a 4 posizioni.

$ cut -c 4- productlist.txt

Risultato:

I primi tre caratteri vengono omessi nell’output.

Esempio-3: taglio per delimitatore e campi

Crea un file CSV denominato “students.csv” con il seguente contenuto per mostrare l’uso del delimitatore.

1001, Jonathan, CSE, 3.74
1002, Micheal, EEE, 3.99
1003, Asraful Haque, BBA, 3.85
1004, Momotaj Khan, inglese, 3.20

Esegui il seguente comando per stampare il nome dello studente e CGPA dal file students.csv. In base al contenuto del file, il 2 ° e il 4 ° campo contengono il nome dello studente e CGPA. Quindi, in questo comando vengono utilizzate due opzioni per mostrare l’output. Uno è il delimitatore, -d, che è “,” qui e un altro è l’opzione di campo, -f.

$ cut -d “,” – f 2,4 students.csv

Risultato:

Se lo desideri stampa due o più colonne sequenziali di qualsiasi dato tabulare o file CSV, quindi puoi definire i campi come un intervallo. L’intervallo del valore del campo viene utilizzato nel comando seguente. Qui, tutti i campi da 2 a 4 verranno stampati come output.

$ cut -d “,” -f 2-4 students.csv

Risultato:

Esempio-4: Taglia per complemento

L’opzione –complement viene utilizzata per generare l’output opposto del comando . Nel seguente comando, viene utilizzato il file productlist.txt creato nel primo esempio. Qui, l’opzione -f taglierà il primo campo e l’opzione –-complement stamperà gli altri tutti i campi del file omettendo il primo campo.

$ cat productlist.txt
$ cut –complement -f 1 productlist.txt

Risultato:

Esempio-5: Taglia per delimitatore di output

Questa opzione è usata per generare output usando un particolare delimitatore. Il file students.csv creato in precedenza viene utilizzato nel seguente comando. “,” È il delimitatore predefinito di qualsiasi file CSV. Il seguente comando utilizza “:” come valore delimitatore di output.

$ cat students.csv
$ cut -d “,” -f 1- 3 students.csv –output-delimiter = “:”

Output:

Dopo aver eseguito il comando, il delimitatore di input ‘,’ sarà sostituito dal delimitatore di output ‘:’ e i primi tre campi verranno stampati separando ‘:’.

Esempio 6: utilizzo di cut with comando pipe

Il comando Cut può ricevere input da qualsiasi file o dall’input dell’utente. Ma il testo di input può essere inviato al comando di taglio utilizzando la pipe. Il comando seguente mostra l’uso del comando di taglio con il tubo. Qui, il comando echo sarà il testo di input per il comando di taglio e il comando di taglio taglierà i campi 2 e 3 in base al delimitatore.

$ echo “Test di taglio comando “| cut -d “” -f 2,3

Risultato:

Esempio -7: Salva l’output del comando di taglio in un file

Se vuoi puoi anche salvare l’output del comando di taglio in qualsiasi file di testo. Il seguente comando prenderà il contenuto del file students.csv come input, taglierà il 2 ° campo in base al delimitatore e stamperà l’output in un file di testo chiamato ‘student_names.txt’.

Output:

Conclusione:

Gli usi più comuni del comando cut sono tentati di spiegare in questo tutorial utilizzando quanto sopra esempi. Spero che l’uso del comando cut venga cancellato dai lettori dopo aver esercitato gli esempi precedenti.

Leave a Reply

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *