Како користити Линук Цат команде (са примерима)

U svakom operativnom sistemu, korisnici upravljaju datotekama, obavljajući radnje poput kreiranja, brisanja i čitanja. Linux nije izuzetak.

Iako je moguće raditi sa datotekama koristeći grafičko korisničko sučelje u Linux okruženju, mnogi korisnici preferiraju interakciju sa sistemom putem terminala.

Linux nudi komande koje omogućavaju korisnicima da manipulišu datotekama direktno iz terminala. Jedna od takvih naredbi je komanda `cat`.

Prema Linux man stranicama, komanda `cat` služi za spajanje datoteka i prikazivanje sadržaja datoteke na standardnom izlazu. Linux man stranice su dokumentacioni fajlovi koji pomažu korisnicima da razumeju Linux komande i njihovu primenu.

Da biste pristupili man stranici za bilo koju Linux komandu, jednostavno unesite `man `. Na primer, za prikaz man stranice komande `cat`, unesite sledeće u terminal:

man cat

Za šta se koristi komanda `cat`

Kao što je već pomenuto, komanda `cat` se koristi za prikazivanje sadržaja datoteke na ekranu. Takođe, služi za spajanje datoteka i izlaz njihovog sadržaja. Ako komandi `cat` prosledite više datoteka, ona će spojiti njihov sadržaj i prikazati ga na ekranu.

Jednostavno rečeno, komanda `cat` spaja sadržaj iz više datoteka i prikazuje ga. Važno je napomenuti da komanda `cat` ne kreira nove datoteke tokom ove operacije, a originalne datoteke ostaju nepromenjene.

Komanda `cat` se takođe koristi u preusmeravanju. Preusmeravanje omogućava korisnicima da promene standardni izvor unosa i odredište za standardni izlaz i standardnu grešku. Standardni ulaz, standardni izlaz i standardna greška su standardni tokovi komunikacije u Linuxu.

Podrazumevano, standardni ulaz je tastatura, a standardni izlaz i standardne greške se prikazuju na ekranu.

Dakle, preusmeravanje znači da umesto standardnog unosa sa tastature, možemo koristiti unos iz datoteke ili drugog izvora.

Kada je reč o standardnom izlazu i standardnoj grešci, umesto prikazivanja na ekranu, moguće ih je preusmeriti i zapisati u datoteku.

Sintaksa komande `cat`

Sintaksa komande `cat` je sledeća:

cat [OPCIJA]... [DATOTEKA]...

U Linux man stranicama, sve što je navedeno unutar uglastih zagrada je opciono. Prema tome, komanda `cat` ne mora imati OPCIJU ili DATOTEKU kao argument. Može imati bilo koju od njih, obe ili nijednu.

Elipsa (…) označava da je dozvoljen jedan ili više prethodnih operanada ili argumenata. Stoga, komanda `cat` može primiti jednu ili više OPCIJA ili DATOTEKA.

DATOTEKA predstavlja datoteke čiji sadržaj želimo da spojimo i prikažemo. OPCIJA predstavlja zastavice (flags) koje se mogu dodati komandi `cat` da bi se promenilo njeno ponašanje. Opcije koje se mogu koristiti sa komandom `cat` su prikazane ispod:

Komanda `cat` funkcioniše tako što uzima datoteku(e) koje joj se proslede i prikazuje njihov sadržaj na standardnom izlazu, a to je prozor terminala. U slučaju da joj se prosledi više datoteka, njihov sadržaj se spaja i prikazuje u prozoru terminala.

Ponašanje komande `cat` će se razlikovati u zavisnosti od zastavice koja joj je prosleđena. Na primer, prosleđivanjem zastavice `-n` komanda `cat` će numerisati sve izlazne linije. U zavisnosti od željenog ponašanja, možete koristiti bilo koju od zastavica koje su dostupne za komandu `cat`.

Kako koristiti komandu `cat`

Da biste koristili komandu `cat`, jednostavno unesite komandu i imena datoteka koje želite da spojite i pročitate. Na primer, za prikaz sadržaja datoteke pod imenom `rainbow.txt`, izvršite sledeću komandu:

cat rainbow.txt

Takođe možete dodati zastavicu da promenite ponašanje komande `cat`. Na primer, možete numerisati sve izlazne linije koristeći zastavicu `-n`. U gore navedenom primeru, možemo numerisati sve izlazne linije u `rainbow.txt` izvršavanjem sledećeg reda:

cat -n rainbow.txt

Izlazi ove dve komande su prikazani ispod:

Da biste kombinovali zastavice ili opcije koje se mogu koristiti sa komandom `cat`, jednostavno ih navedite jednu za drugom, ili razdvojene razmakom. Zastava `-E` prikazana ispod se koristi za dodavanje znaka dolara ($) na kraju izlaznih linija.

Ovo može biti korisno prilikom prikaza novčanih vrednosti. Ispod su prikazani različiti načini na koje možete kombinovati više zastavica sa komandom `cat`:

Da biste spojili i prikazali više datoteka pomoću komande `cat`, jednostavno navedite imena datoteka jedno za drugim, razdvojena razmacima. Na primer, za spajanje dve datoteke pod nazivom `rainbow.txt` i `primary.txt`, izvršite sledeći red:

cat rainbow.txt primary.txt

Izlaz komande je prikazan ispod

Datoteke `rainbow.txt` i `primary.txt` će ostati nepromenjene nakon ove operacije. Redosled navođenja datoteka u komandi određuje kako će sadržaj biti prikazan. Sadržaj se prikazuje od prve do poslednje datoteke. Takođe, možete dodati zastavice prilikom spajanja i prikazivanja više datoteka, kao što je prikazano u nastavku:

Još jedna važna stvar vezana za komandu `cat` je da ako joj nije prosleđena datoteka ili joj je prosleđena crtica (-), komanda `cat` čita sa standardnog ulaza (tastature).

U tom slučaju, komanda `cat` će jednostavno prikazati sve što korisnik unese preko tastature. Da biste to videli u praksi, izvršite komandu:

cat

Nakon toga, pojaviće se trepćući kursor i komanda će čekati unos sa tastature. Unesite bilo koji tekst i pritisnite Enter. Uneti tekst će biti prikazan na standardnom izlazu, kao što je prikazano ispod:

Pritisnite CTRL + C da biste prekinuli i zaustavili prosljeđivanje unosa komandi `cat`.

Takođe možemo koristiti komandu `cat` za spajanje i prikaz sadržaja svih datoteka određenog tipa u aktivnom direktorijumu. Ovo se radi pomoću zvezdice (`*`) kao džokera. Na primer, da bismo prikazali sadržaj svih tekstualnih datoteka (`.txt`) u određenom direktorijumu, izvršili bismo sledeći kod:

cat *.txt

Izlaz komande je prikazan u nastavku:

Primeri komande `cat`

Pored standardne upotrebe, funkcionalnost komande `cat` može se proširiti putem preusmeravanja. Kao što je ranije pomenuto, komanda `cat` podrazumevano ispisuje na ekran terminala.

Međutim, putem preusmeravanja, možemo usmeriti izlaz na drugu datoteku umesto da se prikazuje na ekranu.

Operator preusmeravanja izlaza u Linux-u je > (simbol „veće od“, takođe se naziva ševron).

cat rainbow.txt

Na primer, ako izvršimo liniju:

Sadržaj datoteke `rainbow.txt` će biti prikazan na ekranu.

cat colors.txt > rainbow.txt

Međutim, ako izvršimo:

Sadržaj `rainbow.txt` neće biti prikazan na ekranu. Umesto toga, biće preusmeren i upisan u datoteku `colors.txt`. Ovo je koristan način za kopiranje sadržaja iz jedne datoteke u drugu.

Podrazumevano ponašanje preusmeravanja izlaza u Linux-u je da prepisuje sav sadržaj u datoteci na koju preusmeravamo. Na primer, u gornjem primeru, sav sadržaj u `rainbow.txt` biće zamenjen sadržajem iz `colors.txt`. Da biste zadržali postojeći sadržaj u datoteci na koju preusmeravate i dodali joj novi sadržaj, koristite `>>` prilikom preusmeravanja.

Napominjemo da `colors.txt` sada sadrži i boje iz `rainbows.txt`, nakon preusmeravanja izlaza iz `rainbows.txt` u `colors.txt` koristeći `>>`.

Da bismo dodatno unapredili funkcionalnost komande `cat`, možemo kombinovati preusmeravanje i podrazumevano ponašanje komande `cat` da čita sa standardnog ulaza kada nije obezbeđena nijedna datoteka, kako bismo koristili komandu `cat` za kreiranje datoteke i pisanje u nju.

cat > dark.txt

Ako izvršite sledeći kod:

Preusmeravamo na `dark.txt`. Pošto nismo naveli datoteku čiji će sadržaj biti preusmeren na `dark.txt`, komanda `cat` će očekivati unos sa tastature.

Stoga, unesite bilo koji tekst koji želite da sačuvate u `dark.txt`, pritisnite Enter za prelazak u sledeći red i pritisnite CTRL + D kada završite da biste sačuvali ono što ste otkucali u datoteku na koju preusmeravate.

Pošto preusmeravamo na datoteku koja ne postoji, `dark.txt` će biti automatski kreirana, a ono što smo uneli preko tastature biće sačuvano u datoteci. Na ovaj način možemo koristiti komandu `cat` za kreiranje datoteka i pisanje u njih u trenutku njihovog kreiranja.

Rezultat ove operacije je prikazan ispod:

cat >> dark.txt

Komanda `cat` se takođe može koristiti za dodavanje teksta na kraj datoteke. Koristeći `dark.txt`, možemo dodati još boja izvršavanjem:

Zatim možete dodati dodatne informacije tako što ćete kucati preko tastature, a zatim pritisnuti CTRL + D da biste sačuvali i dodali novi sadržaj u `dark.txt` kao što je prikazano ispod:

cat file1 file2 file3 > file4

Komanda `cat` se takođe može koristiti za spajanje nekoliko datoteka u jednu. Sintaksa za takvu operaciju je prikazana ispod:

Sadržaj `file1`, `file2` i `file3` biće spojen i upisan u `file4`. Takođe, možete koristiti `>>` ukoliko ne želite da prepišete sadržaj `file4`. Ako `file4` ne postoji, biće automatski kreiran.

Primer ovoga je prikazan ispod:

cat colors.txt primary.txt > allColors.txt

Da bismo upisali sadržaj `color.txt` i `primary.txt` u `allColors.txt`, izvršavamo:

cat primary.txt >> colors.txt

Takođe možete dodati sadržaj iz jedne ili više datoteka u drugu datoteku koristeći komandu `cat`. Ovo se postiže korišćenjem `>>` prilikom preusmeravanja izlaza. Ovo sprečava prepisivanje onoga što je već sačuvano u drugoj datoteci. Na primer, da biste dodali sadržaj `primary.txt` u `color.txt`, izvršite kod ispod:

Rezultat ove operacije je prikazan ispod:

Zaključak

Komanda `cat` je veoma korisna Linux komanda koja omogućava korisnicima da spoje i prikažu sadržaj datoteka. Komanda ima više zastavica koje se mogu dodati kako bi se promenilo njeno ponašanje.

Kroz preusmeravanje, funkcionalnost komande `cat` može se značajno proširiti, omogućavajući korisnicima da kreiraju i kopiraju datoteke, spajaju više datoteka u jednu i dodaju sadržaj postojećoj datoteci. Za više informacija o komandi `cat`, posetite njene man stranice.

Takođe možete istražiti neke Linux komande za sistemske administratore.