Uvod
Nakon uvoda u tematiku GNU/Linux distribucija, na red prirodno dolazi upoznavanje sa osnovnim komandama za administraciju sistema.
Možemo reći da su čak i osnovne komande na UNIX-olikim operativnim sistemima, veoma zanimljive same po sebi (i zaista tako smatramo), međutim, sasvim je moguće da mnogi čitaoci - na samom početku bavljenja Linux-om - neće deliti izneti entuzijazam.
U tom slučaju, pokušaćemo da ponudimo praktičan način gledanja na stvari, koji vam možda nije padao na pamet do sada ....
Sa jedne strane, osnovne komande (bilo kog) operativnog sistema, naizgled mogu delovati kao "gomila koječega, koja se ('eto') mora naučiti", ali, sa druge strane - u najpraktičnijem smislu - u pitanju su komande koje omogućavaju efikasno bavljenje 'konkretnijim' aktivnostima (kao što su: programiranje, web dizajn, grafički dizajn i sl).
Shodno navedenom, predlažemo da osnovne UNIX komande (umesto kao "gomilu koječega"), radije shvatite kao "kolekciju dobro napisanih pomoćnih programa koji pouzdano obavljaju osnovne zadatke", odnosno (još praktičnije), predlažemo da savladavanje osnovnih komandi (umesto kao "kuluk"), shvatite isključivo kao dugoročnu investiciju u sopstveno obrazovanje - koja se i te kako isplati na duže staze.
Deluje da komandi ima mnogo, međutim, pod uslovom da se trudite i da se postepeno upoznajete sa komandama (ali - bez napinjanja i želje da sve savladate "odmah i sad"), posle nekog vremena shvatićete da (već) poznajete prilično velik broj naredbi, opcija i podopcija (na primer, mnogo više nego što je prikazano u ovom članku), i shvatićete da sve (jednostavno rečeno) - nije (bilo) toliko teško.
U članku koji je pred nama, upoznaćemo se sa najosnovnijim komandama, a u narednim člancima, sa naprednijim konzolnim komandama za obradu teksta, kao i sa principima funkcionisanja shell skripti.
Man - uputstva o programima
Za sam početak (kao 'lagano zagrevanje' pre nego što pređemo na komande za rad sa datotekama i direktorijumima), prikazaćemo nekoliko korisnih komandi opšteg tipa.
Reklo bi se da je prvo pitanje pri savladavanju (bilo koje) nove veštine: odakle "crpeti" informacije?!
U slučaju GNU/Linux distribucija i programa koji se pokreću pod Linux-om, prva (i gotovo uvek dostupna) opcija, je - dokumentacija koja dolazi uz same programe (druga je traženje informacija online, a tu je naravno i razgovor sa kolegama/prijateljima/poznanicima koji su upućeni u tematiku).
Preko komande man
(skraćeno od manual), moguće je pristupiti uputstvu za upotrebu određenog programa:
Komanda koju smo naveli u gornjem primeru prikazaće uputstvo za upotrebu programa ls
, ali - u opštem smislu - princip važi i za druge instalirane programe, uz koje tipično dolazi "man stranica" (man page), specijalno formatirana tekstualna datoteka koja se otvara preko komande man
.
Sudo (zadavanje root privilegija)
Druga komanda kojoj posvećujemo pažnju na početku, omogućava pokretanje komandi koje zahtevaju administratorske privilegije, ali (naravno) - bez (doslovnog) prijavljivanja na administratorski (tj. "root") nalog.
Iako su korisničke privilegije tema kojoj ćemo tek posvetiti pažnju za prave, za početak je dovoljno da se podsetimo na to, da (po pravilu i uz veoma retke izuzetke), root nalog ne treba koristiti direktno, već za svakodnevnu administraciju treba koristiti obične korisničke naloge, ali - korisničke naloge kojima je dato pravo korišćenja komande sudo
(ili uprošćeno, obične korisničke naloge koji - po potrebi - mogu koristiti administratorske privilegije).
U praksi, kada određenoj komandi prethodi komanda sudo
(Substitute User - Do), osnovna komanda se izvršava sa administratorskim privilegijama (da ponovimo - samo pod uslovom da korisnik ima pravo da koristi komandu sudo
):
U primeru koji smo videli, poziva se komanda za restartovanje sistema (koja se na Linux-u zapravo ne može izvršavati bez administratorskih privilegija).
Alias (prečice za pokretanje programa)
Treća komanda iz grupe 'uvodnih' komandi, omogućava korisnicima da programe pozivaju korišćenjem alternativnih imena (koja sami biraju).
U praktičnom smislu, možemo reći da je u pitanju način za definisanje tekstualnih prečica za komande, u okviru shell programa (najčešće, za komande koje su same po sebi (pre)dugačke, a pored toga, takođe i za komande koje nisu (same po sebi) preobimne za kucanje, ali, nisu ni "neobimne", i pri tom se koriste veoma često).
Recimo, ukoliko ustanovite da često postoji potreba za tim da se prebacite u direktorijum /home/korisnik_1/kodovi/python
(uzećemo za početak "nedrastičan" primer da ne bismo bez potrebe navodili putanju ili komandu od stotinjak znakova), možete otvoriti datoteku ~/.bashrc
, * i dodati sledeću liniju:
Pošto restartujete terminal, komanda cdp
imaće (nadalje) isto dejstvo kao i komanda cd /home/korisnik_1/kodovi/python
.
(Kasnije ćemo prikazati još nekoliko sličnih primera.)
Komande za rad sa direktorijumima i datotekama
Pravilna upotreba direktorijuma i datoteka, omogućava optimalno raspoređivanje podataka koje koristimo svakodnevno (izvorne datoteke, dokumentacija, slike, izvršne datoteke i sl), i svakako je neophodno biti što bolje upoznat sa komandama za rad sa direktorijumima i datotekama (i koristiti ih na što efikasniji način).
pwd - ispis naziva aktivnog direktorijuma
Komanda pwd
(Print Working Directory), ispisuje naziv trenutno aktivnog direktorijuma.
Može se reći da komanda pwd
nema preveliki značaj u svakodnevnom radu (sama po sebi), budući da shell prompt tipično sadrži naziv aktivnog direktorijuma, ali, u pisanju shell skripti - dobro dođe.
Na ovom mestu, osvrnućemo se i na jednu korisnu prečicu: znak ~
(tilda) koristi se u shell programima (i inače u UNIX/Linux svetu), za označavanje home direktorijuma trenutno prijavljenog korisnika, što praktično znači da se putanja nalik na /home/korisnik_111
, doslovno može zameniti putanjom ~
(pri pisanju komandi), naravno - pod uslovom da se naredbe izvršavaju preko naloga korisnik_111
.
ls - prikaz sadržaja aktivnog direktorijuma
Komanda ls
(List), prikazuje sadržaj aktivnog direktorijuma.
Ako se komanda ls
pozove bez dodatnih opcija (i ako nije prethodno definisan alias koji menja smisao poziva "ls") ....
.... dobija se prost listing trenutno aktivnog direktorijuma ....
.... koji ima sledeće odlike:
- nisu prikazane skrivene ("dot") datoteke
- direktorijumi i datoteke su sortirani po imenima, pri čemu se prikazani direktorijumi ni po čemu (vizuelno) ne razlikuju od datoteka
- prikaz je linijski (direktorijumi i datoteke su prikazani jedni pored drugih, umesto jedni ispod drugih)
Ukoliko je potrebno upriličiti prikaz koji podrazumeva tabelarnu strukturu i neskrivanje dot datoteka i direktorijuma (a uključićemo i prikaz u boji i grupisanje direktorijuma i datoteka), komandu ls
treba pozivati uz sledeće opcije:
-a
(all) - prikaz svih datoteka i direktorijuma (uključujući i dot datoteke i direktorijume)-l
(list) - tabelarni prikaz datoteka i direktorijuma ("jednih ispod drugih"), sa dodatnim informacijama-h
(human readable) - prikaz veličina datoteka na "prirodan" (tj. "ljudski") način, uz korišćenje jedinica kao što su Kilobajti, Megabajti i druge veće jedinice (u suprotnom, sve prikazane veličine su izražene u Bajtovima)--color
- korišćenje različitih boja pri označavanju direktorijuma i datoteka (u prikazu)--group-directories-first
- prikaz (svih) direktorijuma pre (običnih) datoteka
Kada se pozove sledeća naredba .....
.... pri čemu se poziv može dodatno uprostiti na sledeći način ....
.... kao izlaz u konzoli, dobija se sledeći ispis:
Naravno, za poslednji poziv može se definisati i alias (koji se može upisati u datoteku ~/.bashrc
):
.... posle čega će prosto pozivanje komande ls
podrazumevati:
- prikaz u obliku tabele (uz korišćenje Kilobajta, Megabajta (i ostalih jedinica))
- prikaz 'skrivenih' datoteka
- korišćenje različitih boja za direktorijume i datoteke
- grupisanje direktorijuma pre datoteka
Ukoliko je u nekom kasnijem trenutku (zapravo) potrebno pozvati komandu ls
u izvornom obliku, može se kao prefiks dodati obrnuta kosa crta:
.... a rezultat je isti ispis kao na slici #6.
cd - promena aktivnog direktorijuma
Komanda cd
(Change Directory), koristi se za promenu aktivnog direktorijuma.
Najprostiji slučaj podrazumeva prebacivanje u poddirektorijum (trenutno aktivnog direktorijuma), što možemo ilustrovati preko primera komande za prebacivanje iz home direktorijuma aktivnog korisnika, u (fiktivni) direktorijum ~/korisnik_1/muzika
:
Po potrebi, moguće je koristiti i apsolutne putanje (sledeća naredba ima isti efekat kao i prethodna):
U praksi, pri prebacivanju u poddirektorijum, nema potrebe za navođenjem apsolutne putanje, ali je zato apsolutnu putanju (apsolutno) neophodno navesti onda kada se direktorijum u koji se prebacujemo nalazi na proizvoljnoj putanji, koja nema dodirnih tačaka sa trenutnom putanjom (na čijem je kraju trenutni direktorijum).
Na primer:
Ugrađene prečice
Komanda cd
omogućava lakše dolaženje do određenih uobičajenih lokacija, preko prečica.
Na primer, poziv komande cd
, bez argumen(a)ta ....
.... ili uz argument ~
(s tim da je prvi način mnogo praktičniji) ....
.... zapravo je prečica za prebacivanje u home direktorijum aktivnog korisnika, isto kao da smo pozvali komandu:
Takođe, postoji i jednostavan način za prebacivanje na "roditeljski" direktorijum (direktorijum u kome se aktivni direktorijum nalazi), pozivanjem komande cd
uz argument..
(razmak je obavezan):
Na primer ....
Ako se greškom prebacimo iz određenog direktorijuma u neki drugi, za povratak se ne mora navoditi apsolutna putanja, već i za tako nešto postoji prečica: cd -
(znak minus).
Na primer:
mkdir - kreiranje direktorijuma
Komanda mkdir
koristi se za kreiranje direktorijuma.
Tipičan poziv podrazumeva kreiranje poddirektorijuma:
.... a u konkretnom primeru (sa gornje slike), kreirali smo direktorijum rust
(odnosno putanju /home/korisnik_1/kodovi/rust
- preko postojeće putanje /home/korisnik_1/kodovi
).
Za kreiranje direktorijuma moguće je koristiti i apsolutne putanje:
.... ali - samo pod uslovom da u navedenoj putanji postoje svi direktorijumi koji prethode direktorijumu koji je potrebno kreirati!
Ukoliko nedostaje bilo koji od prethodećih direktorijuma (koji su navedeni u putanji), sistem će prijaviti grešku, a da se to ne bi dešavalo - potrebno je koristiti dodatni argument (-p
).
mkdir -p - kreiranje celokupne putanje
Ako se komandi mkdir
doda argument -p
(parent):
.... biće (po potrebi) kreirani svi direktorijumi koji nedostaju.
Opcija -p
funkcioniše i sa relativnim putanjama (koristićemo isti primer):
rmdir - uklanjanje direktorijuma
Komanda rmdir
(remove directory) ....
.... uklanja zadati direktorijum, ali - samo pod uslovom da je navedeni direktorijum prazan!
Ukoliko pomenuti uslov nije zadovoljen, moraju se prethodno ukloniti svi poddirektorijumi i pripadajuće datoteke (preko komande rm
, uz korišćenje rekurzije).
rm - uklanjanje datoteka i direktorijuma
Komanda rm
koristi se za uklanjanje datoteka, a uz opciju -r
(recursive), može se koristiti i za (rekurzivno) uklanjanje cele strukture direktorijuma.
Na primer, ako pozovemo sledeću komandu (bez rekurzije):
.... biće uklonjena (jedna) datoteka - cenovnik_2022.pdf
, dok sledeći poziv ....
.... uklanja (rekurzivno), sve datoteke i sve poddirektorijume navedenog direktorijuma i, na kraju - sam direktorijum stari_cenovnici_2011
.
cp - kopiranje datoteka i direktorijuma
Komanda cp
("Copy"), koristi se za kopiranje (tj. umnožavanje) datoteka, uz navođenje putanje datoteke koja se kopira (kao prvog argumenta) i putanje nove datoteke (kao drugog argumenta).
Kao i do sada, putanje mogu biti apsolutne i relativne (naravno, uz poštovanje i svih ostalih prethodno navedenih pravila).
U sledećim primerima, smatramo da je aktivni direktorijum - home direktorijum aktivnog korisnika (~
), a objašnjenja su u komentarima:
U gornjim primerima, mogli ste primetiti i jednu novinu - pojavu (jedne) tačke.
Pojedinačna tačka u putanjama označava trenutni direktorijum (pwd), što praktično znači da se komanda za kopiranje datoteke unutar istog direktorijuma, može poz(i)vati na više načina:
mv - premeštanje i preimenovanje datoteka i direktorijuma
Komanda mv
(move), kao i komanda cp
, takođe prima dva argumenta i može se koristiti za sledeće operacije:
- premeštanje datoteke (u drugi direktorijum)
- promenu naziva datoteke (ukoliko se kao drugi argument preda naziv datoteke na istoj putanji)
U sledećim primerima takođe pretpostavljamo da se nalazimo u home direktorijumu aktivnog korisnika (a opisi su u komentarima):
Kao što vidimo, preimenovanje datoteka se takođe obavlja preko komande mv
(što verujemo da većini korisnika koji se prvi put susreću sa Linux-om, deluje prilično 'čudno'), ali, ako zamislimo 'dodatnu' komandu koja bi se izvršavala na sledeći način ....
.... vidimo da je izostanak zasebne (jednostavne) komande za preimenovanje, krajnje razuman izbor.
Međutim, na Linux-u postoji i sveobuhvatan program rename
(koji nije deo paketa GNU Core Utils; i zato najčešće nije deo diskusije o osnovnim komandama).
rename - preimenovanje uz korišćenje naprednih opcija
Program rename
se izvršava po sledećoj šemi ....
.... ali, najbolje će biti da razmotrimo nekoliko konkretnijih primera:
Kao što vidimo u poslednjem primeru (i kao što ste verovatno i sami očekivali), program rename
je u stanju da koristi regularne izraze (pri čemu je u pitanju regex sintaksa iz programskog jezika Perl), što predstavlja ponešto napredniju opciju sa kojom se možete upoznati pošto se upoznate sa ostalim komandama iz ovog i sledećeg članka.
file - informacije o datoteci
Preko komande file
, moguće je dobiti osnovnu informaciju o tipu datoteke:
U primeru sa gornje slike, konfiguraciona datoteka je formatirana kao obična tekstualna (ASCII) datoteka.
Za kraj priče o osnovnim komandama za rad sa direktorijumima i datotekama, prikazaćemo dve vrlo uobičajene komande koje su "po definiciji" namenjene određenim zadacima, ali - u praksi se tipično koriste van osnovne namene (tj. "za nešto drugo").
touch - ažuriranje postojećih datoteka (kreiranje praznih datoteka)
Osnovna namena komande touch
, je - ažuriranje podataka o vremenu poslednjeg pristupa direktorijumu ili datoteci (što je podatak koji se čuva u okviru fajl sistema).
Pošto je komanda touch
(u širem kontekstu), bitna i u svojoj osnovnoj nameni, razmotrićemo primer.
Recimo, ako pretražimo određeni direktorijum, u potrazi za datotekama koje su poslednji put ažurirane (na primer) u novembru 2021, uredno će biti izlistane sve takve datoteke (videli smo u prethodnom članku kako to možemo uraditi, a u narednom članku ćemo prikazati još detaljniji postupak).
Ako pretragu obavljamo da bismo (na određeni način, zarad dalje obrade), izdvojili sve datoteke koje sadrže podatke koje smatramo zastarelim - i pri tom dalja obrada podrazumeva brisanje - moglo bi se desiti da ostanemo i bez onih datoteka koje nisu dugo ažurirane - ali i dalje sadrže relevantne podatke koji su nam potrebni!
Takve datoteke se (naravno) mogu otvoriti u editoru, i može se pozvati komanda za čuvanje (čime će biti upisano novo vreme pristupa), ali, u okviru UNIX-a i UNIX-olikih sistema postoji i komanda touch
koja navedeni posao obavlja na elegantniji način.
Ako pozovemo komandu touch
:
.... sve datoteke sa navedenom ekstenzijom, na putanji ~/sajtovi/sajt1
, biće ažurirane po pitanju vremena pristupa.
Kreiranje praznih datoteka
Pored osnovne namene (koju smo prethodno opisali), komanda touch
se mnogo češće koristi za kreiranje novih datoteka.
Kreiranje nove (prazne) datoteke funkcioniše na vrlo jednostavan način: ako se komandi touch
, kao argument preda naziv nepostojeće datoteke - biće kreirana prazna datoteka sa navedenim nazivom. *
S obzirom na prethodno navedeni princip, može se reći da komanda touch
predstavlja (u praktičnom smislu), nešto nalik na "mkdir za datoteke".
Prethodno opisani pristup, dobro dođe u situacijama kada je potrebno formatirati konfiguracionu datoteku za određeni program (prikazaćemo primer).
Ako korisnik želi da podesi program prema svojim potrebama, uneće podešavanja u konfiguracionu datoteku - ukoliko takva datoteka (uopšte) postoji, ali, ukoliko datoteka ne postoji - potrebno je prvo kreirati datoteku:
(Primer prikazuje kreiranje konfiguracione datoteke za editor Vim, na podrazumevanoj lokaciji.)
Ali, da ne zaboravimo još jednu komandu koja tipično "ne radi ono što joj je osnovna namena" ....
cat - spajanje tekstualnih datoteka (prikaz sadržaja datoteke u konzoli)
Osnovna namena komande cat
, je - spajanje niski (odnosno, tekstualnih datoteka). *
Na primer, preko sledeće naredbe ....
.... sadržaj dve datoteke može se spojiti i preusmeriti u datoteku dat3
.
Međutim, iako se komanda cat
sasvim često koristi shodno osnovnoj nameni, mnogo češće se koristi za ispis sadržaja datoteka u konzoli, i stoga se postavlja (očigledno) pitanje: kako je komanda cat
, od komande za spajanje niski, postala nezvanična UNIX komanda za prikaz sadržaja tekstualnih datoteka u terminalu?
Kao prvo (služeći se pravilima koja smo naveli u uvodnom članku), ako se tekstualni izlaz određene komande ne usmeri u imenovanu izlaznu datoteku, biće usmeren na standardni izlaz (praktično - terminal), a pored toga, program cat
je napravljen i tako da neće "dramiti" ukoliko se ne preda naziv druge datoteke, već će nedostajuću datoteku (pri spajanju), tretirati kao praznu nisku.
U prevodu: "nema druge ulazne datoteke" + "nema izlazne datoteke" = tekst se (samo) ispisuje na ekranu.
bat - modern(ij)a alternativa
Komanda cat
je sasvim funkcionalna, ali, za korisnike koji žele malo "doteraniji" ispis (uz dodatne opcije), postoji i komanda bat
(s tim da program bat
, za razliku od programa cat
- nije deo osnovnog paketa alata na većini Linux distribucija).
Komanda bat
dodaje u ispis: zaglavlje, redne brojeve i bojenje sintakse za prepoznate jezike (naravno, sve navedeno se može konfigurisati i po želji uključiti/isključiti, a postoje i dodatne opcije, koje možete istraživati samostalno). :)
Pogledajmo primere:
- Izlaz komande cat
(recimo da smo pokrenuli komandu cat proba.py
, koja otvara jednostavnu Python skriptu):
- Izlaz komande bat
(komanda: bat proba.py
; ista datoteka kao u prethodnom primeru):
Da sve bude još bolje - pri samostalnom pozivanju - komanda bat
se ponaša na opisani način, ali, u "pipeline-u" (kada je potrebno da se izlaz prosledi/"pajpuje" u drugi, tj. sledeći program), izlaz iz komande bat
biće isti ("običan"), kao da smo koristili komandu cat
!
(Lepa, zanimljiva i korisna opcija; jedna od mnogih u svetu Linux-a.)
Komande za rad sa medijima/drajvovima
Komande za rad sa drajvovima ne koriste se toliko često kao komande za rad sa datotekama i direktorijumima, ali, svakako spadaju u osnovne komande (sa kojima se treba upoznati već na početku).
df - prikaz slobodnog prostora na particijama
Preko komande df
(Disc Free), mogu se dobiti informacije o zauzetom i slobodnom prostoru na određenom drajvu (ssd-u, hard disku, USB drajvu i sl), kao i o tome na kojoj poziciji je dati uređaj montiran u okviru strukture direktorijuma.
Bićemo praktični i odmah ćemo uvrstiti opciju -h
(poznatu iz prethodnih odeljaka):
.... posle čega se dobija sledeći ispis:
du - prikaz zauzeća direktorijuma
Komanda du
(Disk Usage), računa i prikazuje memorijsko zauzeće datoteka i direktorijuma.
Ako se komandi du
kao argument preda putanja do datoteke, dobija se prost ispis koji je vezan (samo) za navedenu datoteku:
Ako se komandi kao argument preda putanja do direktorijuma, dobija se ispis koji sadrži: i podatke za poddirektorijume, i podatak o ukupnom zauzeću za navedeni direktorijum:
U prethodnom primeru, struktura poddirektorijum je jednostavna ("nerazuđena") i prikaz je krajnje jasan.
Međutim, ako bismo pozvali komandu ....
.... dobili bismo ispis koji je sačinjen iz stotina i stotina redova!
Da se to ne bi dešavalo (osim, naravno, ako ne želimo da preusmerimo ispis u tekstualnu datoteku i sl), potrebno je koristiti opciju -s
(summary):
.... i, ovoga puta, rezultat je - samo informacija o ukupnom zauzeću home direktorijuma aktivnog korisnika.
lsblk - listing priključenih drajvova
Komanda lsblk
izlistava prisutne fizičke drajvove (uz pregled particija), i prikazuje (virtuelnu) lokaciju drajvova i particija u okviru strukture direktorijuma (/dev/sda1
, /dev/sda2
i sl):
Primer radi, ukoliko dodamo USB fleš drajv i ponovo pozovemo komandu:
.... primećujemo da je drajv prepoznat (i prikazan kao /dev/sdb
), posle čega je moguće drajv "montirati" preko komande mount
.
mount - montiranje drajva u strukturu direktorijuma
Preko komande mount
(kao što je poznato iz uvodnog članka), priključeni uređaji se "montiraju" (tj. prijavljuju, ili, 'ugrađuju') u strukturu direktorijuma, posle čega im se može pristupati.
Sadržaj USB drajva koji je priključen u prethodnom odeljku, može se prikazati unutar strukture direktorijuma/foldera (za šta preporučujemo da izaberete uobičajenu i lako prepoznatljivu putanju, kao na primer):
Primetite da komanda mount
spada u komande koje zahtevaju administratorske privilegije, što se u praksi ostvaruje (kao što smo već opisali), preko komande sudo
, na sledeći način:
Sada se lako može pristupiti sadržaju USB-a:
Drajvovi sa kojih se pokreće sistem, i drugi drajvovi koji se ne isključuju (a predviđeno je da budu deo instalacije), montiraju se po posebnoj proceduri pri instalaciji sistema (kao što smo već naveli u uvodnom članku).
umount - uklanjanje drajva iz strukture direktorijuma
Privremeno priključeni uređaj koji je potrebno (fizički) isključiti, prvo je potrebno isključiti iz strukture direktorijuma, to jest "odmontirati" ("unmount-ovati"). Na ovaj način, izbegavaju se neprijatne situacije (gubitak podataka i sl), do kojih može doći zato što sistem (i dalje/još uvek) pristupa uređaju.
Ukoliko komanda umount
ne vrati grešku ....
.... sve je u redu i uređaj se može fizički isključiti (pod uslovom da isključivanje uređaja ne narušava njegovu ispravnost i funkcionalnost na neki drugi način).
Pomoćne komande
Za kraj smo ostavili još nekoliko najčešće korišćenih komandi, od kojih mnoge zahtevaju dodatnu pažnju i upoznavanje sa dodatnim opcijama (na šta ćemo se povremeno osvrtati u narednim člancima), ali, za početak je sasvim dovoljno poznavati osnovnu funkcionalnost prikazanih komandi.
free - prikaz zauzeća RAM memorije
Komanda free
prikazuje zauzeće RAM memorije (kao i ukupan kapacitet i druge informacije):
Prikazan je tipičan način upotrebe, uz argument -h
(human readable), čiji je smisao poznat od ranije.
date - prikaz datuma i vremena
Komanda date
prikazuje trenutni datum i trenutno vreme.
Ukoliko je potrebno doći do pojedinačnih podataka, moguće je sve izvesti na više načina: jedan od načina je korišćenje dodatnih opcija pri pozivu komande (ako želite da odmah saznate šta je sve na raspolaganju, pokrenite komandu man date
), a drugi način podrazumeva korišćenje alata za obradu teksta kao što su grep
ili awk
(što smo već videli u uvodnom članku, na primeru nekih drugih komandi, i čime ćemo se takođe detaljnije baviti u narednim člancima).
cal - kalendar
Komanda cal
prikazuje kalendar za trenutni mesec ....
.... uz označavanje trenutnog datuma.
(Za samostalno istraživanje - pronađite opciju za prikaz tri meseca odjednom: prethodnog meseca, trenutnog i sledećeg.)
ps - prikaz pokrenutih procesa
Komanda ps
(skraćeno od Processes), prikazuje pokrenute procese ....
.... međutim, prikaz koji smo videli, može biti pomalo "suvoparan", i stoga ćemo (za sam početak), ipak prikazati nešto 'živopisnije' alternative komande ps
.
top (htop/gtop)
Programi kao što su top
(i novije, modernije varijante htop
i gtop
), predstavljaju svojevrsnu nadogradnju programa ps
, a s obzirom na to da su top
, htop
i gtop
, TUI programi (za razliku od programa ps
koji spada u kategoriju CLI programa), informacije o procesima (kao i mnoge druge informacije), prikazuju se na znatno pregledniji način:
Međutim (kao što smo videli), i dalje se radi o konzolnim programima, to jest, nisu u pitanju programi sa pravim grafičkim interfejsom (prikazali smo htop
, ali su i top
i gtop
slični).
uname - informacije o kernelu
Komanda uname
(koja se tipično koristi uz opciju -a
), prikazuje osnovne informacije o verziji sistema:
U našem slučaju, u pitanju je Linux (kernel), ali, komanda uname
je univerzalna i, u slučaju da se kao operativni sistem koristi (na primer) OpenBSD, izlaz bi bio drugačiji (i prikazivao bi informacije o verziji OpenBSD-a).
less - prikaz teksta stranicu po stranicu
Za sam kraj, jedan "pejdžer" (rekli bismo, i dalje najpopularniji).
Pejdžer (eng. pager) je program preko koga se tekstualni izlaz prethodne komande prikazuje stranicu-po-stranicu, i stoga, osim što nepregledni listing direktorijuma možemo proslediti u datoteku (kao što smo već videli u prvom članku), možemo koristiti i programe kao što su less
, more
i bat
. *
Sledeći koraci ....
Iako smo (i ovoga puta) izneli poveću količinu informacija, u pitanju je samo relativno kratak uvod u osnovne komande koje se koriste u GNU/Linux distribucijama.
Sa jedne strane, pomisao da "ima još opcija (i to podosta)?!", može delovati pomalo 'zabrinjavajuće'.
Sa druge strane, treba razumeti da je za sam početak - sasvim dovoljno (ali i neophodno) - dobro savladati (samo) osnovne opcije, a nove komande, opcije (i podopcije, varijacije i sl), treba dodavati postepeno, po potrebi, bez opterećivanja - onda kada se u svakodnevnom radu javi potreba za dodatnom funkcionalnošću.
U sledećem nastavku, bavićemo se naprednim opcijama za obradu teksta u komandnoj liniji ....