Sintaksa:
izrezati OPCIJA… [FILE]…Vrijednost OPTION obavezna je za naredbu 'cut', a naziv FILE nije obavezan. Ako u naredbi izostavite ime datoteke, tada će se uzeti podaci sa standardnog unosa. Ali ako u naredbi cut izostavite vrijednost OPTION, generirat će pogrešku.
Opcije:
Oznaka opcije | Opis |
-b ili -byte = POPIS | Odaberite određene bajtove. |
-c ili -znak = POPIS | Odaberite određene znakove. |
-d ili -delimiter = DELIM | Odaberite DELIM vrijednost kao graničnik. Prema zadanim postavkama graničnik je TAB. |
-f ili -polja = POPIS | Odaberite određena polja |
-upotpuniti, dopuna | Koristite za dopunu rezultata |
-s ili -samo-ograničeno | Izostavite retke koji ne sadrže graničnik. |
-izlazni graničnik = STRING | Upotrijebite vrijednost STRING kao graničnik izlaza. |
-z ili -zero-završeni | Koristite NULL kao graničnik crte. |
Primjer-1: Izrezano po bajtovima
Sljedeća naredba cut rezat će standardne ulazne podatke na temelju definiranih bajtova. Ovdje su 3,4,5 i 6 definirani kao bajtovi. Izlaz će se generirati na temelju standardnog ulaza. Pritisnite CTRL + D za izlaz iz naredbe.
rez $ -b 3,4,5,6Izlaz:
Ovdje je ulaz "Sviđa mi se programiranje", a izlaz je "poput" na temelju spomenutih bajtova.
Stvorite tekstualnu datoteku pod nazivom „lista proizvoda.txt”Sa sljedećim sadržajem za primjenu naredbe 'cut'. Koristite TAB za odvajanje polja sadržaja datoteke.
ID Naziv Cijena01 Olovka 2 dolara
02 Olovka 1 $.5
03 Gumica $ 1
Pokrenite sljedeću naredbu da biste dohvatili samo ID proizvoda. Ovdje se bajtovi daju kao raspon, '1-2' za rezanje podataka.
$ rez -b 1-2 < productlist.txtIzlaz:
Primjer-2: Izrezivanje po znakovima
Isti izlaz možete generirati pomoću opcije -c, one su prikazane u prethodnim primjerima. Dakle, nema posebne razlike između izlaza opcija -b i -c naredbe cut. Pokrenite sljedeću naredbu da biste prikazali upotrebu opcije -c. Ovdje se 4- koristi kao vrijednost opcije koja će presjeći s položaja 4 na sve preostale znakove svakog retka. Također možete upotrijebiti negativni znak ispred vrijednosti poput -4, a zatim će se od početka smanjiti na 4 pozicije.
$ cut -c 4- popis proizvoda.txtIzlaz:
Prva tri znaka izostavljena su u izlazu.
Primjer-3: Izrezano graničnikom i poljima
Stvorite CSV datoteku pod nazivom 'studenti.csv ' sa sljedećim sadržajem koji pokazuje upotrebu graničnika.
1001, Jonathan, CSE, 3.741002, Micheal, EEE, 3.99
1003, Asraful Haque, BBA, 3.85
1004, Momotaj Khan, engleski, 3.20
Pokrenite sljedeću naredbu za ispis imena učenika i CGPA iz programa studenti.csv datoteka. Prema sadržaju datoteke, 2nd i 4th polja sadrže ime studenta i CGPA. Dakle, u ovoj se naredbi koriste dvije mogućnosti za prikaz rezultata. Jedno je graničnik, -d, što je ovdje ',', a drugo je opcija polja, -f.
$ cut -d ',' -f 2,4 učenika.csvIzlaz:
Ako želite ispisati dva ili više sekvencijalnih stupaca bilo koje tablične podatke ili CSV datoteku, tada polja možete definirati kao raspon. Raspon vrijednosti polja koristi se u sljedećoj naredbi. Ovdje će se sva polja od 2 do 4 ispisati kao izlaz.
$ cut -d ',' -f 2-4 učenika.csvIzlaz:
Primjer-4: Izrezati komplementom
-Dopuna se koristi za generiranje suprotnog rezultata naredbe. U sljedećoj naredbi, popis proizvoda.koristi se txt datoteka koja je stvorena na prvom primjeru. Ovdje će opcija -f smanjiti 1sv field i --complement opcija ispisat će sva ostala polja datoteke izostavljanjem 1sv polje.
$ mačka popis proizvoda.txt$ cut --complement -f 1 popis proizvoda.txt
Izlaz:
Primjer 5: Izrezano graničnikom izlaza
Ova se opcija koristi za stvaranje rezultata korištenjem određenog graničnika. Prethodno stvoreni studenti.csv datoteka koristi se u sljedećoj naredbi. ',' zadani je graničnik bilo koje CSV datoteke. Sljedeća naredba koristi ':' kao vrijednost graničnika izlaza.
$ mački studenti.csv$ cut -d "," -f 1-3 učenika.csv --output-delimiter = ":"
Izlaz:
Nakon izvršavanja naredbe, graničnik ulaza ',' zamijenit će se graničnikom izlaza ':', a prva tri polja ispisat će se odvajanjem ':'.
Primjer-6: Korištenje naredbe cut s cijevi
Naredba Cut može uzeti unos iz bilo koje datoteke ili iz korisničkog unosa. No, ulazni tekst može se poslati na naredbu cut pomoću cijevi. Sljedeća naredba prikazuje upotrebu naredbe cut s cijevi. Ovdje će naredba echo ulazni tekst za naredbu cut izrezati, a naredba cut izrezati polja 2 i 3 na temelju graničnika.
$ echo "Naredba testiranja rezanja" | izrezati -d "" -f 2,3Izlaz:
Primjer-7: Spremanje izlaza izrezane naredbe u datoteku
Ako želite, izlaz naredbe cut također možete spremiti u bilo koju tekstualnu datoteku. Sljedeća naredba preuzet će sadržaj učenika.csv datoteku kao ulaz, izrežite 2nd polje na temelju graničnika i ispis izlaza u tekstualnoj datoteci pod nazivom 'imena učenika.txt'.
$ mački studenti.csv$ mački studenti.csv | cut -d studenti mačke.csv | izrezati -d "," -f 2> ime_učenika.txt ","
f 2> ime_učenika.txt
$ cat student_names.txt
Izlaz:
Zaključak:
U ovom vodiču pokušavaju objasniti najčešće upotrebe naredbe cut pomoću gornjih primjera. Nadam se da će se upotreba naredbe cut očistiti od čitača nakon izvršavanja gornjih primjera.