Kako da se lako snadjete u Linux-u i koje su vam komande za to potrebne?

U ovom članku ćemo navesti 50 najčešće korišćenih Linux komandi koje će vam biti od koristi ako se prvi put susrećete sa Linuxom. Spisak nije napravljen po nekom odredjenom redu, izdvojeno je 50 komandi za koje smatramo da su korisne. Komandi svakako ima još, što ćemo obradjivati u narednim člancima.

linux komande

1. tar komande

Pravljenje nove tar arhive:

$ tar cvf imefajla.tar ime_foldera/

Raspakivanje postojeće tar arhive:
$ tar xvf archive_name.tar

Pogledajte postojeću tar arhivu:
$ tar tvf archive_name.tar

Dodatni primeri za tar komande: The Ultimate Tar Command Tutorial with 10 Practical Examples

2. grep komande

Pretraga fajla za odredjeni string:
$ grep -i "the" ime_fajla

Ispis linije koja se poklapa, zajedno sa 3 linije posle nje.
$ grep -A 3 -i "rec_koju_trazimo" ime_fajla

Traženje stringa u svim fajlovima rekurzivno:
$ grep -r "rec_koju trazimo" *

Dodatni primeri za grep komande: Get a Grip on the Grep! – 15 Practical Grep Command Examples

3. find komande

Traženje fajlova po imenu:
# find -iname "MyCProgram.c"

Izvršenje komandi nad fajlovima koji su pronadjeni:
$ find -iname "MyCProgram.c" -exec md5sum {} \;

Nalaženje svih praznih fajlova:
# find ~ -empty

Dodatni primeri za find komande: Mommy, I found it! — 15 Practical Linux Find Command Examples

4. ssh komande

Login na remote host:
ssh -l jsmith remotehost.server.com

Debug odredjenog ssh hosta:
ssh -v -l jsmith remotehost.server.com

Provera verzije ssh klijenta:
$ ssh -V
OpenSSH_3.9p1, OpenSSL 0.9.7a Feb 19 2003

Dodatni SSH primer: 5 Basic Linux SSH Client Commands

5. sed komande

Kada kopirate DOS file na Unix siste, možete primetiti \r\n na kraju svake linije. Ova komanda konvertuje DOS format u UNIX format:
$sed 's/.$//' filename

Ispis sadržaja fajla obrnuto:
$ sed -n '1!G;h;$p' primerfajla.txt

Dodavanje broja linije na sve linije koje nisu prazne:
$ sed '/./=' primerfajla.txt | sed 'N; s/\n/ /'

Dodatni sed primer: Advanced Sed Substitution Examples

6. awk komande

Uklanjanje duplih linija u fajlu:
$ awk '!($0 in array) { array[$0]; print }' temp

Ispisivanje svih linija iz /etc/passwd koje imaju isti uid i gid:
$awk -F ':' '$3==$4' passwd.txt

Ispis odredjenog polja iz fajla:
$ awk '{print $2,$5;}' primer.txt

Dodatni awk primer: 8 Powerful Awk Built-in Variables – FS, OFS, RS, ORS, NR, NF, FILENAME, FNR

7. vim komande

Predjite na 143-ću liniju fajla:
$ vim +143 imefajla.txt

Predjite na prvi rezultat pretrage:
$ vim +/termin_koji_trazite imefajla.txt

Otvorite fajl u read-only modu:
$ vim -R /etc/passwd

Dodatni vim primeri: How To Record and Play in Vim Editor

8. diff komande

Ignorišite prazna polja pri poredjenju
# diff -w ime_fajla.txt ime_fajla_novo.txt

Dodatni diff primeri: Top 4 File Difference Tools on UNIX / Linux – Diff, Colordiff, Wdiff, Vimdiff

9. sort komande

Redjanje fajlova uzlazno:
$ sort imena.txt

Redjanje fajlova silazno:
$ sort -r imena.txt

10. export komande

Da pogledate varijable okruženja koje se tiču ORACLE-a
$ export | grep ORACLE
declare -x ORACLE_BASE="/u01/app/oracle"
declare -x ORACLE_HOME="/u01/app/oracle/product/10.2.0"
declare -x ORACLE_SID="med"
declare -x ORACLE_TERM="xterm"

Da eksportujete varijablu:
$ export ORACLE_HOME=/u01/app/oracle/product/10.2.0

11. xargs komande

Kopirajte sve slike na eksterni hard disk:
# ls *.jpg | xargs -n1 -i cp {} /eksterni-had-disk/folder

Pronadjite sve .jpg slike na računaru i arhivirajte ih:
# find / -name *.jpg -type f -print | xargs tar -cvzf slike.tar.gz

Preuzimanje svih URL-a pomenutih u listi u fajlu:
# cat lista-urla.txt | xargs wget –c

12. ls komande

Prikažite veličine fajla u klasičnim jedinicama (KB, MB):
$ ls -lh
-rw-r----- 1 primer primer 8.9M Sep 12 15:27 arch-linux.txt.gz

Poredjajte fajlove na osnovu vremena zadnje modifikacije:
$ ls -ltr

Klasifikacija fajlva sa specijalnim karakterima:
$ ls -F

Dodatni ls primeri: Unix LS Command: 15 Practical Examples

13. pwd komande

pwd je skraćenica od Print working directory. Šta drugo da vam kažemo o dobrom starom pwd-u koji ispisuje trenutni direktorijum već decenijama.

14. cd komande

Možete koristiti “cd -” da se prebacujete izmedju zadnja 2 direktorijuma u kojima ste bili.

Koristite “shopt -s cdspell” da automatski ispravite imena fajlova koje ste koristili u cd-u

Dodatni cd primeri: 6 Awesome Linux cd command Hacks

15. gzip komande

Da napravite *.gz kompresovan fajl:
$ gzip test.txt

Da raspakujete *.gz fajl:
$ gzip -d test.txt.gz

Prikažite koliko je kompresovan odredjeni fajla pomoću gzipa:
$ gzip -l *.gz
compressed uncompressed ratio uncompressed_name
23709 97975 75.8% asp-patch-rpms.txt

16. bzip2 komande

Da napravite *.bz2 kompresovan fajl:
$ bzip2 test.txt

Da raspakujete *.bz2 fajl:
bzip2 -d test.txt.bz2

Dodatni bzip2 primeri: BZ is Eazy! bzip2, bzgrep, bzcmp, bzdiff, bzcat, bzless, bzmore examples

17. unzip komande

Da raspakujete *.zip fajl:
$ unzip test.zip

Pogledajte sadržaj *.zip fajla, bez raspakivanja:
$ unzip -l magda.zip
Archive: magda.zip
Length Date Time Name
-------- ---- ---- ----
40995 11-30-98 23:50 META-INF/MANIFEST.MF
32169 08-25-98 21:07 classes_
15964 08-25-98 21:07 classes_names
10542 08-25-98 21:07 classes_ncomp

18. shutdown komande

Ugasite sistem odmah:
# shutdown -h now

Ugasite sistem za 10 minuta:
# shutdown -h +10

Restartujte sistem uz pomoć shutdown-a:
# shutdown -r now

Pokrenite fsck (filesystem check) posle restarta:
# shutdown -Fr now

19. ftp komande

ftp i sftp imaju slične komande. Da se konektujete na udaljeni server i skinete više fajlova, uradite sledeće:
$ ftp IP/hostname
ftp> mget *.html

Da pogledate fajlove na serveru pre skidanja, koristite mls uz ftp:
ftp> mls *.html -
/ftptest/features.html
/ftptest/index.html
/ftptest/othertools.html
/ftptest/samplereport.html
/ftptest/usage.html

Dodatni ftp primeri: FTP and SFTP Beginners Guide with 10 Examples

20. crontab komande

Pogledajte crontab unos za pojedinačnog korisnika:
# crontab -u imekorisnika -l

Zakažite cronjob na svakih 10 minuta:
*/10 * * * * /home/magda/check-disk-space

Dodatni crontab primeri: Linux Crontab: 15 Awesome Cron Job Examples

21. service komande

service komanda se koristi da za pokretanje skripti bez potrebe za pozivanjem pune putanje do skripte.

Proverite status SSH servisa:
# service ssh status

Proverite status svih servisa.
service --status-all

Restartujte servis.
# service ssh restart

22. ps komande

Komanda ps se koristi da se prikažu informacije o procesima koji su trenutno aktivni.

Pogledajte trenutne procese:
$ ps -ef | more

Pogledajte trenutne procese u tree-hijerarhiji:
$ ps -efH | more

23. free komande

Ova komanda se koristi da prikaže slobodne resurse memorije na serveru.

Klasičan free output
$ free
total used free shared buffers cached
Mem: 3566408 1580220 1986188 0 203988 902960
-/+ buffers/cache: 473272 3093136
Swap: 4000176 0 4000176

Ako hoćete brzo da proverite koliko RAMa ima vaš server, koristite -g opciju za GB, -b za bytes, -k za KB, -m za MB.
$ free -g
total used free shared buffers cached
Mem: 3 1 1 0 0 0
-/+ buffers/cache: 0 2
Swap: 3 0 3

Ako hoćete da vidite celu memoriju, zajedno sa swap-om, dodajte -t.
$ free -t
total used free shared buffers cached
Mem: 3566408 1592148 1974260 0 204260 912556
-/+ buffers/cache: 475332 3091076
Swap: 4000176 0 4000176
Total: 7566584 1592148 5974436

24. top komande

top komande prikazuju sve procese u sistemu, poredjane po CPU resursima koje troše. Da složite procese po nekom drugom resursu, pritisnite O:
Current Sort Field: P for window 1:Def
Select sort field via field letter, type any other key to return

a: PID = Process Id v: nDRT = Dirty Pages count
d: UID = User Id y: WCHAN = Sleeping in Function
e: USER = User Name z: Flags = Task Flags
……..

Da izlistate procese koji pripadaju samo jednom korisniku, koristite -u opciju:
$ top -u imekorisnika

Još top primera: Can You Top This? 15 Practical Linux Top Command Examples

25. df komande

Ispis zauzeća prostora na disku:
$ df -k
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda1 29530400 3233104 24797232 12% /
/dev/sda2 120367992 50171596 64082060 44% /home

Komanda df -h ispisuje informacije u formatu koji je čitljiv, npr zauzeće će biti ispisano u GB:
$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 29G 3.1G 24G 12% /
/dev/sda2 115G 48G 62G 44% /home

Možete koristiti -T da dobijete informaciju koji tip fajlsistema se koristi:
$ df -T
Filesystem Type 1K-blocks Used Available Use% Mounted on
/dev/sda1 ext4 29530400 3233120 24797216 12% /
/dev/sda2 ext4 120367992 50171596 64082060 44% /home

26. kill komande

kill komande se koriste da ubijete procese. Prvo pronadjite ID procesa, a zatim koristite killall -9 da ubijete proces.
$ ps -ef | grep vim
magda 7243 7222 9 22:43 pts/2 00:00:00 vim

$ kill -9 7243

Dodatni kill primeri: 4 Ways to Kill a Process – kill, killall, pkill, xkill

27. rm komande

Upit za potvrdu pre brisanja fajla:
$ rm -i imefajla.txt

Može biti veoma korisno u kombinaciji sa specijalnim karakterima.

Ispis imena fajla i potvrda pre brisanja:
$ rm -i file*

Sledeća komanda će obrisati sve fajlove i foldere unutar foldera /primer, uključujući i folder /primer .
$ rm -r primer

28. cp komande

Kopirajte fajl1 u fajl2, a da pritom sačuvate vlasništvo nad fajlom i timestamp:
$ cp -p fajl1 fajl2

Kopirajte fajl1 u fajl2 a da pritom dobijete potvrdu o kopiranju, pre samog kopiranja:
$ cp -i fajl1 fajl2

29. mv komanda

Preimenujte fajl1 u fajl2. Ako fajl2 već postoji, dobićete potvrdu o tome pre preimenovanja:
$ mv -i fajl1 fajl2

Napomena: mv -f je suprotna komanda, koja će preimenovati fajl1 u fajl2, bez potvrde o tome.

mv-v će ispisati šta se dešava prilikom preimenovanja, što može biti korisno u masovnijim izmenama fajlova.
$ mv -v fajl1 fajl2

30. cat komande

Možete pogledati više fajlova odjedom. Sledeća komanda će ispisati sadržaj fajla1 a zatim sadržaj fajla2.
$ cat fajl1 fajl2

Pri ispisu fajla, komanda cat -n će dodati i broj svake linije u fajlu.
$ cat -n /etc/logrotate.conf
1 /var/log/btmp {
2 missingok
3 monthly
4 create 0660 root utmp
5 rotate 1
6 }

31. mount komande

Da montirate fajl sistem, potrebno je da kreirate folder i da montirate sistem kao što je prikazano:
# mkdir /backup

# mount /dev/sdb1 /backup

Takodje možete dodati ovo u fstab, za automatsko montiranje.
/dev/sdb1 /backup ext2 defaults 0 2

32. chmod komande

chmod komande se koriste da upravljanje permisija nad folderom ili fajlom.

Dajte pun pristup korisniku ili grupi nad fajlom koristeći sledeću komandu:
$ chmod ug+rwx fajl.txt

Onemogućite pristup grupi na odredjenom fajlu:
$ chmod g-rwx fajl.txt

Primenite set permisija rekurzivno na svim fajlovima i folderima:
$ chmod -R ug+rwx fajl.txt

Dodatni chmod primeri: 7 Chmod Command Examples for Beginners

33. chown komande

chown komande se koriste da upravljanje vlasništva nad folderima i fajlovima.

Da promenite vlasništvo nad fajlom tako da vlasnik bude oracle, a grupa db, možete koristiti sledeću komandu:
$ chown oracle:db fajl.sh

Možete koristiti -R da promenite vlasništvo rekurzivno nad svim folderima i fajlovima unutar jednog foldera:
$ chown -R oracle:db /home/oracle

34. passwd komande

Promenite vašu lozinku koristeći passwd. Ova komanda će vas pitati za staru lozinku a zatim za novu:
$ passwd

Administrator može promeniti lozinke ostalim korisnicima. U ovom slučaju nije potrebno znati staru lozinku:
# passwd imekorisnika

Uklonite lozinku za odredjenog korisnika. Kada se lozinka ukloni, taj korisnik se može logovati bez lozinke.
# passwd -d imekorisnika

35. mkdir komande

Sledeća komanda će napraviti folder temp unutar home direktorijuma.
$ mkdir ~/temp

Možete napraviti nekoliko foldera sa jednom mkdir komandom.

$ mkdir -p dir1/dir2/dir3/dir4/

36. ifconfig komande

ifconfig se koristi za konfiguraciju mreže na Linux sistemima.

Pogledajte interfejs zajedno sa statusom:
$ ifconfig -a

Startujte ili stopirajte odredjeni mrežni interfejs koristeći up i down komande.
$ ifconfig eth0 up

$ ifconfig eth0 down

Dodatne ifconfig komande: Ifconfig: 7 Examples To Configure Network Interface

37. uname komande

Uname komande ispisuju važne informacije o sistemu: kernel, hostname, tip procesora i slično.

Primer ispisa na Ubuntu laptopu:
$ uname -a
Linux john-laptop 2.6.32-24-generic #41-Ubuntu SMP Sat Sep 12 01:12:52 UTC 2015 i686 GNU/Linux

38. whereis komande

Ako želite da saznate gde se odredjena komanda nalazi na serveru i kako se poziva, možete koristiti whereis.
$ whereis ls
ls: /bin/ls /usr/share/man/man1/ls.1.gz /usr/share/man/man1p/ls.1p.gz

39. whatis komande

Komanda whatis ispisuje kratak opis odredjene komande:
$ whatis ls
ls (1) - list directory contents

$ whatis ifconfig
ifconfig (8) – configure a network interface

 

40. locate komande

Koristeći locate komandu možete brzo pronaći lokaciju fajla ili grupe fajlova. Komanda locate koristi bazu kreiranu od strane updatedb.

Primer ispod pokazuje sve fajlove koji sadrže reč ‘crontab’ u sebi.
$ locate crontab
/etc/anacrontab
/etc/crontab
/usr/bin/crontab
/usr/share/doc/cron/examples/crontab2english.pl.gz
/usr/share/man/man1/crontab.1.gz
/usr/share/man/man5/anacrontab.5.gz
/usr/share/man/man5/crontab.5.gz
/usr/share/vim/vim72/syntax/crontab.vim

41. man komande

Ispis man stranice za odredjenu komandu:
$ man crontab

Kada je man stranica prevelika ili se sadrži od više poglavlja, direktno do poglavlja možete doći na sledeći način:
$ man BROJPOGLAVLJA ime_komande

Sledećih 8 poglavlja su dostupni na man stranicama:

  1. Generalne komande
  2. Pozivanje sistema
  3. Funkcije C biblioteka
  4. Speciajalni fajlovi
  5. Formati fajlova
  6. Igre i screensaver-i
  7. Razno
  8. Administracija sistema i daemon-i

Na primer, kada uradite whatis crontab, primetićete da crontab ima 2 poglavlja, poglavlje 1 i poglavlje 5. Da vidite odmah poglavlje 5, uradite sledeće:
$ whatis crontab
crontab (1) - maintain crontab files for individual users (V3)
crontab (5) - tables for driving cron

$ man 5 crontab

42. tail komande

Bez dodatnih argumenata, ispisuje zadnjih 10 linija fajla:
$ tail ime_fajla.txt

Ispis n broja linija fajla:
$ tail -n N ime_fajla.txt

Pogledajte sadržaj fajla u realnom vremenu koristeći tail -f. Ovo je korisno za praćenje logova. Komanda se terminiše koristeći CTRL+C.
$ tail -f log-fajl

Dodatni tail primeri: 3 Methods To View tail -f output of Multiple Log Files in One Terminal

43. less komande

less je veoma koristan kada pregledate ogromne logove.
$ less ogroman-log-fajl.log

Kada jednom otvorite fajl koristeći less, sledeće dve prečice su dosta korisne:
CTRL+F – napred
CTRL+B – nazad

Dodatni less primeri: Unix Less Command: 10 Tips for Effective Navigation

44. su komande

Prebacite se na drugi korisnički nalog koristeći su komandu. Admin može da se prebaci na bilo čiji nalog, bez lozinke.
$ su - IMEKORISNIKA

Izvršite komandu sa tudjeg naloga. U navedenom primeru, Duško može da izvrši ls komandu kao Magda. Kada se komanda izvrši, sistem će se vratiti na Duškov nalog.
[dusko@dev-server]$ su - magda -c 'ls'

[dusko@dev-server]$

Ulogujte se na odredjeni nalog i pokrenite odredjeni shell umesto standardnog shell-a.
$ su -s 'SHELLNAME' USERNAME

45. mysql komande

mysql je najrasprostranjeniji sistem baza podataka otvorenog koda. Čak i ako ne koristite SQL na svom serveru, možda će vam zatrebati mysql komanda da se konektujete na SQL na drugom serveru.

Da se povežete na udaljeni mysql server:
$ mysql -u root -p -h 192.168.1.2

Da se povežete na lokalni mysql server:
$ mysql -u root -p

Ako hoćete da unesete lozinku direktno u terminal, unesite je odmah posle -p, bez razmaka.

46. yum komande

Da instalirate Apache koristeći yum:
$ yum install httpd

Da ažurirate Apache koristeći yum:
$ yum update httpd

Da obrišete Apache koristeći yum:
$ yum remove httpd

47. rpm komande

Da instalirate Apache koristeći rpm:
# rpm -ivh httpd-2.2.3-22.0.1.el5.i386.rpm

Da ažurirate Apache koristeći rpm:
# rpm -uvh httpd-2.2.3-22.0.1.el5.i386.rpm

Da obrišete Apache koristeći rpm:
# rpm -ev httpd

Dodatni rpm primeri: RPM Command: 15 Examples to Install, Uninstall, Upgrade, Query RPM Packages

48. ping komande

Pingujte gmail server sa samo 5 paketa:
$ ping -c 5 gmail.com

Dodatne ping komande: Ping Tutorial: 15 Effective Ping Command Examples

49. date komande

Postavite datum na mašini:
# date -s "09/12/2015 23:59:53"

Kada promenite vreme na mašini, trebalo bi da sinhronizujete sat sa datumom:
# hwclock –systohc

# hwclock –systohc –utc

50. wget komande

Brzi i lak način da skinete softver, muziku, video ili bilo koji drugi fajl sa inerneta.
$ wget http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-3.2.1.tar.gz

Skinite fajl i snimite ga pod drugim imenom:
$ wget -O taglist.zip http://www.vim.org/scripts/download_script.php?src_id=7701

Dodatni wget primeri: The Ultimate Wget Download Guide With 15 Awesome Examples

PRIJAVITE SE ODMAH ZA NAJNOVIJE TEKSTOVE SA NAŠEG BLOGA!

 

Tags: , , ,

2 Responses

  1. zarko септембар 18, 2015 at 10:34 pm #

    Mene interesuje dali za linux postoji internet exsplorer

Submit Comment