« Odgovor #5 poslato: Septembar 02, 2016, 11:43:07 pre podne »
Procesi- ps – Process Status – Spisak procesa koji se izvršavaju.
- ps a – Slično, samo za sve procese (all).
- ps u <username> – Prikaz svih pokrenutih procesa za <username>. Kod nekih verzija UNIX-a ps daje samo spisak procesa u screenu.
- ps l – Kompletan prikaz procesa koji se izvršavaju (sa prioritetima).
- ps ax – Prikazuje trenutne procese svih ljudi (i od roota) i procese koji nisu vezani za terminal. Opcija x se najviše koristi za otkrivanje procesa koji su se otrgli kontroli.
- ps ax | more – Lista stranu po stranu.
- ps auvx – Ovako ćemo naći sve procese koji su pokrenuti, čak i one koji trenutno spavaju.
U nekim verzijama UNIX-a ispred ovih opcija potrebno je navesti crtu (-). Statusi procesa u komandi ps:
D – Uninteruptible sleeping.
R – Runnable.
S – Sleeping.
T – Stopped or Traced (suspended).
Z – Zombie.
Suspendovanje procesa vrši se pritiskom na ^Z.
- jobs – Prikazuje suspendovane procese i one u pozadini sa njihovim brojem.
- bg %<job> – Prebacuje suspendovani proces čiji je broj joba <job> u pozadinu (background), pa proces počinje da se izvršava (ne ceka).
- fg %<job> – Prebacuje supsendovani proces čiji je broj joba <job> u foreground (isto kao pre pritiska ^Z).
Ako se iza komande navede ampersand (&) tada se proces odmah startuje u backgroundu.
- finger pera›alas.matf.bg.ac.yu >> pera& – S obzirom da se ovaj proces obavlja bar nekoliko sekundi, stavićemo da se izvršava u pozadini.
- kill <pid> – Ubijanje procesa čiji je pid <pid> (vidi se pomoću ps). Pid je skraćeno od Process ID.
- kill %<job> – Kao i malopre. Broj <job> se vidi pomoću jobs.
- kill -9 <pid> – Ovo je krajnje surovo ubistvo – ubija sigurno. Kao end task u WINDOWS-u. Ako ubijemo proces -tcsh ili -bash, izlogovaćemo sami sebe.
- screen – Startuje se program screen. U ovom programu, izvesne komande neće raditi, ili neće raditi na uobičajen način, ali će zato one važnije uglavnom raditi bolje. Nakon startovanja screena, možemo da otvaramo više prozora odjednom, da se prebacujemo izme|u njih… Pri otvaranju novog prozora uvek se startuje .tcshrc (odnosno .bashrc u shellu bash). Pomoću komande ps možemo videti koliko je prozora aktivno (u svakom prozoru je aktivan tcsh ili bash).
Upravljanje u screenu:
^AC – Otvaranje novog prozora (create).
^A0 – Prebacivanje na prozor 0 (prvi prozor).
^A1 – Prebacivanje na prozor 1 (ako postoji).
^A<cifra> – Prebacivanje na prozor broj <cifra>.
^A^A – Prebacivanje na poslednji prozor koji smo koristili (u WINDOWS-u alt-tab).
^AN – Prebacivanje na sledeći prozor (next).
^A<space> – Prebacivanje na sledeći prozor.
^A<backspace> – Prebacivanje na prethodni prozor (back).
^A<alt>Q – Startovanje copy moda u screenu. U njemu ’-’ i ’+’ služe za pomeranje ekrana nagore i nadole. Na taj način, omogućeno je čitanje redova koji više nisu na ekranu.
^AK – Zatvaranje tekućeg prozora (kill).
exit – Zatvaranje tekućeg prozora (odnosno shella).U DOS-u environment se setuje sa: set. U UNIX-u je slično. - set <promenljiva> = <string> – Ako koristimo shell tcsh.
- <promenljiva> = <string> – Ako koristimo shell bash.
U oba slučaja, kad ne navedemo <string>, <promenljiva> postaje prazan string.
- echo $<promenljiva> – Ispisuje vrednost promenljive.
- set direktorijum = /etc – Definisanje promenljive direktorijum.
- cat $direktorijum/passwd – Ispisuje fajl /etc/passwd.
- set nalozi = $direktorijum/passwd – Vrednost promenljive direktorijum se odmah zamenjuje, tako da naknadna promena vrednosti te promenljive ne utiče na promenljivu nalozi.
- echo $nalozi – Ispis promenljive nalozi.
- cat $nalozi – Ispisuje fajl /etc/passwd.
- set catnalozi = “cat $nalozi” – Ovde moraju da stoje navodnici zbog blanka.
- $catnalozi – Izvršava komandu.
- set – Spisak svih setovanih promenljivih.
- set vreme = ’date’ – Promenljivoj vreme dodeljujemo string date.
- set vreme = ???date??? – Ovi navodnici znače da će se prvo izvršiti komanda date, pa će se tek onda novi string dodeliti promenljivoj.
- echo $vreme – Ispis vremena u koje smo definisali promenljivu vreme.
- set ja=???who am i | cut -d“ ” -f1 | cut -d! -f2??? – Kad navedemo ovakav apostrof (), prvo se izvršava komanda pod apostrofom, pa se tek onda izvršava naredba set. To važi i za sve ostale naredbe.
- echo $ja – Ispis ranije izvršene komande, jer je izlaz te komande zapamćen u promenljivoj ja.
- set prompt=“<opcije>” – Ovako se postavlja izgled početnog dela komandne linije i obično se navodi u fajlu .tcshrc da se ne bi pisalo svaki put prilikom logovanja.
- set prompt=“%/” – Ovako će se na početku linije ispisati trenutna apsolutno ime direktorijuma.
- set prompt=“%m” – Sad će ispisati ime servera.
- set prompt=“%B<opcije>%b” – Opcije izme|u %B i %b biće ispisane masno (bold).
- set prompt=“Neki tekst” – U komandnoj liniji će stajati ovako napisan tekst, tj. neće se videti samo ona slova ispred kojih stoji %.
- set prompt=“%B%m%b%/>” – Ovo je preporuka za prompt. Ova linija se stavi u .tcshrc.
Skript (kao batch file u DOS-u) je spisak akcija koje treba izvršiti.
U njemu:
# – Komentar, osim kada je u kombinaciji sa !, i tada se navodi shell.
*#!/bin/sh – Znači da se skript izvršava u okviru bourne shella sh, koji je standardan za skriptove, i sistemski skriptovi se uvek pišu za sh. Shell se mora navesti na početku skripta.
$n – Daće nam n-ti ulazni argument (n = 1, 2… 9).
$0 – Ovde se krije ime skripta (fajla).
$# – Broj ulaznih argumenata.
$* – Svi ulazni argumenti.
shift – Pomera indekse argumenata ulevo ($2 –> $1, $3 –> $2, …), dok $0 i dalje ostaje ime skripta. Koristi se kad ima više od 9 ulaznih argumenata.
for <promenljiva> in <skup> do <lista komandi> done – For komanda.
while <uslov> do <lista komandi> done – While komanda.
Poziv jednog skripta iz drugog vrši se prostim navo|enjem imena prvog skripta u drugom. Recimo da želimo da skript bbb pozovemo iz skripta aaa. Tada u jednom redu skripta aaa navedemo bbb.
Naravno, oba fajla, i aaa i bbb, moraju biti izvršni, tj. moraju imati parametar x me|u pravima korisnika.
Poziv jednog skripta iz drugog može se izvršiti i naredbom exec <skript>, jedino što se u tom slučaju bukvalno prelazi na taj skript, dok pozivajući prestaje sa izvršavanjem (isto kao poziv drugog batch fajla bez komande call u DOS-u).
Kada se startuje skript u okviru koga on sam sebe poziva (rekurzivno), tada će se startovati puno procesa (trebalo bi beskonačno mnogo, ali postoji ograničenje od nekoliko desetina).
Da se ne bi ubijalo nekoliko desetina procesa naredbom kill -9 (usput, neki procesi će tako postati zombie), samo se ubije celokupan posao (job) naredbom %<broj>.
U starijim verzijama LINUX-a skript se startuje pomoću sh <skript>, pa je takav i poziv jednog skripta u okviru drugog.
- awk ’<awk komanda>’ <lista fajlova> – Awk komanda.
- awk ’šprint “1=”$1“\t2=”$2}’ <lista fajlova> – Ispis prve dve kolone.
- awk -F<separator> ’<awk komanda>’ <lista fajlova> – Postavljamo separator polja (field). Po defaultu ovaj separator je bilo koja belina.
- awk –F“\t” ’šprint “1=”$1“\t2=”$2}’ kurs.3/timovi – Postavlja \t za separator polja i ispisuje prva dva polja iz fajla timovi.
- awk -f <fajl> <lista fajlova> – Umesto da pisemo akciju ’š…}’, možemo da je smestimo u <fajl>.
Neka primer u fajlu proba piše: { print “1=”$1“\ t2=”$2 } – Tada je prethodni primer:
- awk -F“\t” -f proba kurs.3/timovi – Isto kao prethodni primer.
- cc <c prg> – Kompajlira <c prg> u izvršni fajl a.out, koji se startuje sa a.out.
- cc <c prg> -o <izvršni fajl> – Kompajlira <c prg> u <izvršni fajl>.
- make <c prg bez ekstenzije> – Kompajlira <c prg bez ekstenzije>.c u <c prg bez ekstenzije>.
- telnet <server> [<port>] – Telnetovanje na drugi server.
- telnet alas.matf.bg.ac.yu – Ovako se priključujemo na alas.
- telnet 0 – Ovako se priključujemo na server na kom se nalazimo (ima svrhe ako navedemo port).
- telnet 0 4000 – Priključivanje na port 4000 servera na kom se nalazimo.
- telnet afrodita.rcub.bg.ac.yu 4000 – Priključujemo se na port 4000 na afroditi.
- logout – Izlazak iz telneta (izlogivanje). Može se koristiti i exit. Negde rade i logoff i bye.
- ftp <server> – File Transfer Protocol – Protokol za transfer fajlova.
Nakon ftpovanja, komande su sledeće:
help – Spisak svih komandi.
get <fajl> [<novo ime fajla>] – Skidanje fajla sa naloga.
put <fajl> [<novo ime fajla>] – Prenošenje fajla na nalog.
mget <lista fajlova> – Multiple get – Za više fajlova. Moguće je koristiti i *, ?, [ i ] za selekciju.
mput <lista fajlova> – Multiple put.
quit – Izlazak iz ftpa.
!<komanda polaznog OS> – Na ovaj način će se izvršiti data komanda na polaznom sistemu.
Recimo, ako se ftpuje iz DOS-a na alas, može se koristiti bilo koja naredba DOS-a, npr. dir kucanjem !dir.
Rezultat će biti listanje fajlova iz DOS direktorijuma.
Ako se ftpuje sa alasa na neki drugi UNIX server, mogu se koristiti sve komande kojima alas raspolaže, npr. !joe <fajl>.
Time editujemo fajl na alasu.
hash – Pri prenosu fajlova, da bismo znali da prenos nije stao, svakih 2 KB će se ispisati taraba (#). Svega nekoliko korisnih napomena:
^C u većini progama služi za prekid programa (ponekad i ^D).
<tab> dovršava pisanje imena fajla (ako je jednoznačno odre|en).
Ako postoji više fajlova sa početkom koji smo napisali, napisaće se još i onaj deo tih komandi koji je zajednički za sve njih.
^D (negde i tab) za nekoliko napisanih slova (string) lista sve komande koje počinju tim stringom.
^D u slučaju da nije ništa napisano u komandnoj liniji, ima funkciju logout.
^<bckspc> je ponekad bolje koristiti nego sam backspace, na primer, pri logovanju ili ftpu. - chown -c <user> <fajl> – Change owner – Menja vlasništvo fajla na unetog korisnika, koji mora da postoji na sistemu. Opcija -c je od changes.
- chsh -s <shell> <username> – Change shell – Shell se mora navesti sa celom putanjom.
- chsh -s /bin/tcsh <username> – Menjamo shell u tcsh.
- groupadd -g <gid> <ime grupe> – Dodavanje grupe sa identifikacionim brojem <gid>.
- useradd <opcije> <login> – Dodavanje korisnika <login>.
Opcije pri dodavanju korisnika su:
-d <home dir> – Postavljanje home direktorijuma.
-s <shell> – Postavljanje shella.
-u <uid> – User ID – Postavljanje identifikacionog broja korisnika.
-G <group> - Svrstavanje korisnika u navedenu grupu. - passwd -i <broj dana> <login> – Broj dana dok ne istekne password.
- date MMDDhhmm[[ CC]YY][.ss] - Setovanje datuma.
Oznake u naredbi date su:
MM – Month – Mesec.
DD – Day within month – Dan u mesecu.
hh – Hour – Sati.
mm – Minute – Minuti.
CC – Početne dve cifre godine.
YY – Poslednje dve cifre godine.
ss – Second – Sekunde.
- at <vreme> – Sada očekuje da unesemo komande koje će izvršiti u navedenom vremenu i sve što treba da se ispiše na ekranu (standradnom izlazu) poslaće u obliku maila, kao i u slučaju da je greška u nekoj komandi. Unos komandi završavamo sa ^D.
- at now + 1 minute – Posle toga u novom redu unosimo komande.
- at 6 aug 18 – Komande za 18-i avgust u 6 sati.
- at now + 2 minute – Prijavljuje gramatičku grešku da treba da stoji minutes, ali ipak nastavlja sa radom.
- atq – Prikazuje jobove koji čekaju da se izvrše.
- atrm <broj> – Ukida job <broj>. Broj nekog joba vidi se pomoću atq
Sačuvana
Octagon SF8008 v2 (S2X + T2/C) 4K UHD
SuperJack HARL 12" Motor/60E-30W
TV LG UM7100PLB 49" 4K Full HDR 10+
Hako Pro, Amlogic S905Y4, 4GB RAM, 64GB ROM
G20s Pro BT + 2.4GHz Wireless, Air Mouse and Voice
TiviMate Premium (lifetime)
Sledeći korisnici su pohvalili ovaj post: Taurus