Comanda Linux `cut` este una dintre comenzile utile pentru a lucra cu date șiruri și conținut de fișier. Este utilizat în principal pentru tăierea conținutului din date tabulare sau fișier CSV. Fiecare linie a fișierului poate fi tranșată și datele necesare pot fi recuperate cu ușurință folosind comanda `tăiat`. Poate fi, de asemenea, utilizat pentru a tăia textul după delimitator sau poziție de caracter sau octet. Această comandă are multe opțiuni pentru a tăia date din text sau fișier în diferite moduri. Modul în care comanda tăiere poate fi utilizată cu diferite opțiuni este prezentat în acest tutorial utilizând diverse exemple.
Sintaxă:
Valoarea OPȚIUNE este obligatorie pentru a fi utilizată pentru comanda `tăiat`, iar numele FIȘIERULUI este opțional. Dacă omiteți numele fișierului din comandă, acesta va prelua date de la intrarea standard. Dar dacă omiteți valoarea OPȚIUNII în comanda de tăiere, atunci aceasta va genera eroarea.
Opțiuni:
Etichetă opțională | Descriere |
-b sau –byte = LIST | Selectați octeții specifici. |
-c sau –character = LIST | Selectați caracterele particulare. |
-d sau –delimiter = DELIM | Selectați valoarea DELIM ca delimitator. În mod implicit, delimitatorul este TAB. |
-f sau –fields = LIST | Selectați câmpurile speciale |
–complement | Utilizați pentru a completa ieșirea |
-s sau –on-delimited | Omiteți linii care nu conțin delimitator. |
–output-delimiter = STRING | Utilizați valoarea STRING ca delimitator de ieșire. |
-z sau -zero-terminated | Utilizați NULL ca delimitator de linie. |
Exemplu-1 : Cut bytes
Următoarea comandă de tăiere va tăia datele standard de intrare pe baza octetilor definiți. Aici, 3,4,5 și 6 sunt definite ca octeți. Ieșirea se va genera pe baza intrării standard. Apăsați CTRL + D pentru a ieși din comandă.
Ieșire:
Aici, intrarea este „Îmi place programarea”, iar ieșirea este „ca” pe baza octeților menționați.
Creați un fișier text numit „productlist.txt” cu următorul conținut pentru aplicarea comenzii `cut`. Utilizați TAB pentru a separa câmpurile conținutului fișierului.
01 Stilou $ 2
02 Creion $ 1,5
03 Ștergător $ 1
Rulați următoarea comandă pentru a prelua numai ID produs. Aici, octeții sunt dați ca interval, „1-2 ′ pentru a tăia datele.
Ieșire:
Exemplu-2: tăiat după caractere
Puteți genera același rezultat folosind opțiunea -c, acestea sunt prezentate în exemplele anterioare. Deci, nu există nicio diferență specială între ieșirea lui -b și – c opțiuni ale comenzii de tăiere. Rulați următoarea comandă pentru a afișa utilizarea opțiunii -c. Aici, 4- este folosit ca o valoare a opțiunii care va reduce de la poziția 4 la toate caracterele rămase ale fiecărei linii. De asemenea, puteți utiliza semnul negativ în fața valorii cum ar fi -4, apoi va tăia de la început la 4 poziții.
Ieșire:
Primele trei caractere sunt omise în ieșire.
Exemplu-3: tăiat după delimitator și câmpuri
Creați un fișier CSV numit „students.csv” cu următorul conținut pentru a arăta utilizarea delimitatorului.
1002, Micheal, EEE, 3.99
1003, Asraful Haque, BBA, 3.85
1004, Momotaj Khan, engleză, 3.20
Rulați următoarea comandă pentru a imprima numele studentului și CGPA din fișierul students.csv. Conform conținutului fișierului, câmpurile 2 și 4 conțin numele studenților și CGPA. Deci, două opțiuni sunt utilizate în această comandă pentru a afișa ieșirea. Unul este delimitatorul, -d, care este ‘,’ aici și altul este opțiunea de câmp, -f.
Ieșire:
Dacă doriți să tipăriți două sau mai multe coloane secvențiale ale oricăror date tabulare sau fișier CSV, apoi puteți defini câmpurile ca un interval. Gama valorii câmpului este utilizată în următoarea comandă. Aici, toate câmpurile de la 2 la 4 vor fi tipărite ca ieșire.
Ieșire:
Exemplu-4: Tăiere prin complement
– opțiunea de complement este utilizată pentru a genera ieșirea opusă comenzii . În următoarea comandă, este utilizat fișierul productlist.txt care este creat în primul exemplu. Aici, opțiunea -f va tăia primul câmp, iar opțiunea –-complement va imprima celelalte toate câmpurile fișierului omițând primul câmp.
$ cut –complement -f 1 productlist.txt
Ieșire:
Exemplul-5: tăiat cu delimitator de ieșire
Această opțiune este utilizată pentru a genera ieșire utilizând un delimitator particular. Fișierul students.csv creat anterior este utilizat în următoarea comandă. ‘,’ Este delimitatorul implicit al oricărui fișier CSV. Următoarea comandă folosește „:” ca valoare delimitator de ieșire.
$ cut -d „,” -f 1- 3 students.csv –output-delimiter = „:”
Ieșire:
După executarea comenzii, delimitatorul de intrare ‘,’ va fi înlocuit cu delimitatorul de ieșire ‘:’ și primele trei câmpuri vor fi tipărite separând ‘:’.
Exemplu-6: Utilizarea tăierii cu comanda pipe
Comanda Cut poate prelua intrarea din orice fișier sau din intrarea utilizatorului. Dar textul de intrare poate fi trimis pentru comanda de tăiere folosind conducta. Următoarea comandă arată utilizarea comenzii de tăiere cu țeava. Aici, comanda echo va comanda textul de intrare pentru tăiere și comanda tăiere va tăia câmpurile 2 și 3 pe baza delimitatorului.
Ieșire:
Exemplu -7: Salvați ieșirea comenzii de tăiere într-un fișier
Dacă doriți, puteți salva și ieșirea comenzii de tăiere în orice fișier text. Următoarea comandă va lua conținutul fișierului students.csv ca intrare, va tăia al doilea câmp pe baza delimitatorului și va imprima ieșirea într-un fișier text numit „student_names.txt”.
Ieșire:
Concluzie:
Cele mai frecvente utilizări ale comenzii de tăiere sunt încercate să explice în acest tutorial folosind cele de mai sus exemple. Sperăm că utilizările comenzii de tăiere vor fi șterse de cititori după exercitarea exemplelor de mai sus.