Biologie | Chimie | Didactica | Fizica | Geografie | Informatica | |
Istorie | Literatura | Matematica | Psihologie |
UNIX. Generalitati. Comenzi UNIX.
Ce reprezinta Internet?
Internet reprezinta mai mult decit o retea uriasa de calculatoare. El constituie o retea de retele si, in plus, un mediu informational si de calcul cu foarte bogate servicii si resurse, baze de date etc. Se poate spune ca Internet constituie un conglomerat extrem de complex de arhitecturi, componente fizice si sisteme de operare.
Pentru ca un utilizator situat in fata unui calculator sa poata avea acces la Internet, este suficient sa-si conecteze calculatorul la un NOD din acest mediu (NODUL fiind de asemenea un calculator, care insa este legat direct la internet si care ofera citeva din caracteristicile Internet) si sa inceapa apoi prin intermediul unor instrumenmte specifice sa 'exploreze' o parte din resursele Internet-ului.
Prin CONECTARE se intelege acceptarea de catre mediul Internet a accesului logic al unui utilizator (lucru ce presupune deschiderea-cu acordul administratiei ce gireaza nodul respectiv - unui cont de utilizator si existenta unui serviciu local de tip DIAL-UP).
In cadrul acestui proces de conectare utilizatorul trebuie sa introduca de la tastatura masinii de la care initiaza conectarea, informatii precum LOGIN NAME - nume de conectare si PASSWORD - parola de conectare la un HOST (server) conectat si cunoscut de catre mediul Internet. In continuare, utilizatorul va putea face apel la o serie de facilitati oferite de sistemul de operare UNIX pentru comunicarea in retea (telnet, E-mail, ftp) sau se vor folosi o serie de instrumente concepute special pentru parcurgerea si cautarea in Internet. Dupa ce s-a efectuat cautarea si dupa ce s-a putut vizualiza si/sau transfera informatiile dorite, utilizatorul se poate deconecta (operatie numita LOGOUT sau EXIT) de la Internet.
Pornim de la acceptiunea ca o RETEA DE CALCULATOARE este constituita dintr-un ansamblu de calculatoare interconectate prin intermediul unor medii de comunicatie (linie telefonica, fibra optica, cablu coaxial etc.), asigurindu-se pe aceasta cale folosirea in comun de catre un numar mare de utilizatori a tuturor resurselor fizice (hardware), logice (software de baza si aplicatii) si informationale (baze de date) de care dispune ansamblul
de calculatoare conectate.
Din punct de vedere topologic o retea de calculatoare este descrisa de un GRAF format dintr-o serie de NODURI (calculatoare, statii de lucru, terminale) interconectate intre ele prin ARCE ce reprezinta liniile de legatura intre echipamentele din noduri.
Clase:
WAN (Wide Area Network) = Retea pe distente mari (asigura interconectarea unor noduri extrem de indepartate (viteza medie intre 9,6kbps - 45Mbps).
LAN (Local Area Network) = Retele locale (asigura conexiuni rapide cu debite variabile intre 4Mbps - 2 Gbps)
MAN (Metropolitan Area Network) = Retele metropolitane (acopera zone geografice - ex. oras - cu debire intre 56kbps - 100Mbps).
Prin protocol se intelege un set de reguli care descriu desfasurarea relatiilor dintre activitati cu obiective comune. In cadrul comunicatiei intre doua noduri exista un protocol de transmitere numit NOD-LA-NOD care guverneaza transmiterea datelor, detectia si corectia erorilor, impartirea si/sau reasamblarea mesajelor in/din pachete si dirijarea spre destinatie a pachetelor din retea.
Ce este UNIX?
UNIX este un sistem de operare care face posibila scrierea de utilitare si aplicatii software intr-un mod simplu si clar. UNIX este un sistem TIME-SHARING care ofera:
un sistem de fisiere ierahizat (grupeaza fisiere inrudite);
compatibilitate intre fisiere, dispozitive de intrare/iesire si mecanisme de comunicatie intre procese;
posibilitatea de a initia procese multitasking (rularea mai multor programe simultan, de la un singur terminal; aceste programe pot rula in mod invizibil in background in timp ce in foreground un alt task este liber sa scrie date la terminal sau sa accepte comenzi);
este un sistem multiuser (suporta mai multe terminale utilizator care lucreaza concurent);
grad inalt de portabilitate (este un sistem de operare scris aproape integral in limbjul 'C').
Dezavantaj: nu este un sistem prietenos (se prezinta utilizatorului printr-o interfata arida). Poate provoca utilizatorului 'distrat' accidente (comanda de stergere
fisiere sau cea de copiere).
Un utilizator obisnuit isi incepe relatia sa cu UNIX din momentul de intrare in sistem prin sesiunea 'login:'. Parola din motive de securitate nu apare pe ecran pe masura ce este introdusa (este recomandabil ca parola sa se schimbe periodic). Sistemul va afisa timpul curent si versiunea de sistem de operare UNIX care se ruleaza in acel moment. Pe unele sisteme se afiseaza si numele de host la care se face conectarea, care de obicei este acelasi cu alias-ul numelui de nod Internet. Parolele nu sunt niciodata memorate in 'clar'. Parolele sunt criptate si stocate in fisierul /etc/passwd, pentru utilizatorii inregistrati.
Prompter-ul de linie de comanda da indicatii asupra Shell-ului curent (interfata utilizator in acel moment).
Ajutorul ON-LINE
Utilizatorul are la dispozitie mai multe modalitati pentru a obtine un ajutor pentru aflarea semnificatiei unor comenzi, sensul optiunilor acestora si modul lor de utilizare. Pentru o rapida reamintire a optiunilor si a formatului comnezilor se poate introduce pe linia de comanda respectiva '--help'. Argumentele optionale sunt incluse in paranteze drepte iar parantezel ronde (..) arata situatiile cind comanda poate accepta un numar variabil de argumente.
Ex.: cp --help (ENTER).
Pentru un ajutor detaliat asupra unei comenzi se foloseste comnada 'man' ce lanseaza componenta Manual Pages (Paginile manualului de refderinta).
Sintaxa este:
$man <nume-comanda>
Fiecare pagina a acestui manual este divizata intr-un grup de cimpuri standard. Cimpul NAME listeaza comenzile incluse in Manual Pages. Cimpul Synopsis arata formatul comenzilor cu argumentele lor. Cimpul DESCRIPTION descrie modul de lucru al comenzii si semnificatia inclusiv formatul argumentelor acceptate.
Comanda 'whatis' lanseaza operatia de descriere a unei alte comenzi si are formatul:
$whatis <nume-comanda> (este echivalenta cu man -k)
Comanda 'apropos' permite gasirea unui nume de comanda doar pe baza descrierii sale si are sintaxa:
$apropos <cuvint_cheie>
Comenzi UNIX
UNIX reprezinta un foarte puternic sistem de operare, multitasking si multiutilizator, cu implementari diverse pe toata gama de platforme, precum mainframe-uri, minicalculatoare si microcalculatoare.
Sistemul de fisiere
O functie extem de importanta a unui sistem de operare este gestionarea fisierelor proprii si ale utilizatorului. In vederea folosirii lor, fisierele trebuie pe de o parte sa fie usor de memorat si usor de gestionat, iar pe de alta parte trebuie sa incapa convenabil pe un mediu fizic accesibil. Aceste cerinte impun ca sistemul de fisiere sa aiba o structura logica eficienta si o structura fizica poterivita pentru dispozitivele utilizate in memorarea fisierelor. Sistemul de fisiere UNIX contine un numar de directoare cu semnificatii speciale. In continuare este perezentata o astfel de structura tipica:
ROOT___DEV (fisiere speciale pentru dispozitive periferice: consola sistem, terminale, discuri, imprimanta)
___BIN (programe utilitare in format executabul: compilatoare, asambloare, instrumente pentru dezvoltarea de programe)
___LIB (biblioteci de limbaje si utilitare : Fortrand, C, rutine de I/E, apeluri sistem, biblioteci matematice)
___ETC (date de sistem cu acces limitat si controlat, utilitare de sistem destinate in special superuser-ului - administratorului - , fisiere cu parole, fisiere cu comenzi SHELL de initializare)
___TMP (fisiere temporare utilizate de utilitare: editor, compilatoare, asamblor)
___USR________BIN (programe utilitare mai putin folosite)
________TMP (fisiere temporare mai putin folosite)
________DICT (liste de cuvinte, verificarea impartirii in silabe-SPELL CHECKER)
________LIB (fisiere de biblioteci mai putin utilizate)
________MAN (directoare cu fisier text continind in intregime Manualul Programatorului UNIX)
________SPOOL_____AT (procese temporizate)
_____LPD (director imprimanta)
_________USERS_____USER1 (structura de director a utilizatorului 1)
_____USER n (structura de director a utilizatorului n)
Protectia fisierelor. Drepturi de acces
Toate sistemele UNIX includ o schema formala a drepturilor de acces la fisiere care prevede ca in general utilizatoriii au deplin acces la propriile lor fisiere si acces restrins la fisierele de sistem. Schema de acces la fisiere statueaza ca exista:
trei drepturi de acces:
READ (r) - citire (exista posibilitatea de listare a directorului cu comanada 'ls') WRITE (w) - scriere (se pot crea/sterge fisiere in director)
EXECUTE (x) -executie (se poate parcurge directorul pentru accesul la fisierele continute)
si trei categorii de utilizatori:
PROPRIETAR (u)
GRUP (g)
CEILALTI UTILIZATORI (o)
Deci, vor trebui sa existe 9 (3 drepturi de acces x 3 categorii de utilizatori) pozitii pentru precizarea completa a acestor drepturi. Pentru fisiere semnificatia drepturilor de acces reiese din numele acestor drepturi, dreptul de WRITE incluzind si posibilitatea de stergere.
Cind este creat un fisier complet nou, lui I se atribuie o serie de drepturi de acces implicite. In mod obisnuit se asigura drepturi complete pentru proprietarul fisierului, drept de CITIRE si EXECUTIE celorlalti membri ai aceluiasi grup de utilizatori si numai drept de EXECUTIE pentru public (altii - o). Dprepturile de acces pot fi vizualizate pe ecran cu comanda 'ls' cu o serie de optiuni precum:
-l (forma lunga)
-a (toate intrarile)
-t (sorteaza dupa timpul ultimei modificari)
-r (ordine inversa)
Schimbarea drepturilor de acces se face cu comanda 'chmod'. In aceasta comanda este necesar sa fie specificate urmatoarele trei informatii:
1 - pentru ce persoane se stabilesc drepturile de acces
2- care sint drepturile care se modifica
3- care este fisierul ale carui drepturi de acces se modifica
Pentru (1) pot fi folosite caracterele 'u' (utilizator), 'g' (grup), 'o' (altii), 'a' (toti).
Pentru (2), elementele sint date sub forma unui semn (+, -) urmat de unul din caracterele 'r', 'w', 'x'. De exemplu comanda:
$chmod u-w fisier_test
are ca scop anularea dreptului de scriere in fisierul fisier_test pentru proprietarul acestuia.
Combinatii de taste si comenzi UNIX
Exista o serie de combinatii de taste care asigura functii utile pentru utilizatorul acestui sistem de operare.
<CTRL - C> - dtermina oprirea unui proces in executie, astfel incit, daca ne gasim in momentul in care o comanda este in curs de executie si care nu se doreste sa mai fie terminata, se va apasa combinatia de taste de mai sus si procesul se va termina imediat.
<CTRL - D> - reprezinta un termintor al intrarii prin care se indica terminarea procesului de intrare date sau iesirea din sistemul UNIX. In unele circumstante aceasta combinatie de taste actioneaza precum <CTRL - C>, alteori insa nu va putea opri derularea unui proces cum reuseste combinatia de mai sus.
<CTRL - Z> - de obicei, indica dorinta de suspendare a executiei unui proces, obtinindu-se un mesaj de forma 'Suspend' si programul pe timpul rularii caruia a fost introdusa combinatia de taste de mai sus se va opri. Se poate relansa executia programului suspendat, toate job-urile suspendate putind fi listate cu comanda 'jobs'.
Citeva comenzi UNIX
Comanda PASSWD, stabilirea unei parole
Pentru a stabili o parola se introduce comanda 'passwd'
$passwd
Changing passwd for username
Old passwd:
New passwd:
Re-enter new passwd:
Este recomandabil ca parola sa se schimbe periodic. UNIX solicita parole de cel putin cinci caractere, dar acest numar poate, in principiu, sa varieze in functie de versiune sau de implementare.
Comanda DATE (data si timpul)
Sistemul afiseaza data si ora curenta.
$date
Fri Jan 29 13:30 EST 1998
Pentru a executa comanda tastata de utilizator, Shell-ul va cauta in directorul curent comanda, iar daca nu este gasita aici, va cauta in directoarele '/bin' si, daca este necesar, si in '/usr/bin'. Toate aceste directoare '/bin', '/usr/bin' sau directorul curent sint colectii de fisiere esentiale. Shell-ul., dupa ce a gasit programul DATE, il incarca in memorie si il executa.
Comanda W
$w
Afiseaza identificatorii de utilizatori curenti (user ID). Se dau informatii despre ce face fiecare utilizator (cine este conectat la sistem, numele terminalelor filosite de utilizatorii din sistem, data si timpul ce indica) momentul in care fiecare utilizator a deschis o sesiune de lucru). Pentru a afla numele utilizatorului de la terminalul curent se tasteaza:
$who am I
Comanda WHEREIS
Permite gasirea unui fisier. Se afiseaza calea catre fisierul indicat in clar, fiind mentionate si celelalte aparitii ale acelui nume de fisier in alte directoare.
$whereis
Comanda PS
Fiecare program care ruleaza se numeste proces sau task. Comanda 'ps' verifica ce procese sint curent rulate, active in sistem.
$ps -a (afiseaza toate procesele)
De exemplu, se va afisa:
PID TTY TIME CMD
5 0:55 -x
6 0:04 vi test.c
1 0:00 sh -c sh
1 0:00 sh
1 0:09 ps -a
unde:
PID este identificatorul de proces. Fiecarui proces UNIX ii este asignat un PID in momentul crearii sale. Prin PID se va referi procesul.
TTY este numarul teminalului de la care este lansat procesul
TIME este timpul alocat pentru proces. UNIX asigura fiecarui proces o cuanta de timp si apoi acorda cite o cuanta de timp si urmatoarelor procese.
CMD este numele comenzii care a lansat procesul
$ps (afiseaza procesele de la terminalul utilizatorului curent)
$ps -l (genereaza un listing lung)
$ps -f (genereaza un listing complet)
Comanda PWD (calea de la radacina pina la directorul curent)
Afiseaza numele complet al directorului curent. Imediat dupa procedura de login UNIX, directorul curent de lucru este 'home directory'.
$pwd
/home/stud/numeutilizator
Comanda CD (schimba directorul curent)
Permite trecerea la un alt director, de pe nivel superior sau inferior. Transforma directorul introdus explicit dupa comanda in director curent.
$cd /usr/dan/programe
$pwd
/usr/dan/programe
Comanda LS (listeaza fisiere si continutul directoarelor)
$ls (afiseaza numele fisierelor si subdirectoarelor din directorul curent)
$ls -a (afiseaza si fisierele invizibile sau speciale)
$ls -al (afiseaza si informatii suplimentare)
Este similara comenzii DIR din DOS.
Optiuni:
-l afiseaza in format lung indicind drepturile de acces, numarul de legaturi, dimensiunea fisierului, data ultimei actualizari
-s afiseaza in plus numarul de blocuri pentru fiecare fisier
-t lista tuturor fisierelor nu este in ordine alfabetica, ci sortata dupa data ultimei actualizari
-I afiseaza numarul inodului fiecarui fisier
-a afiseaza in plus si fisierele directoare specificate si parintele lor
-u la afisare se ia data ultimului acces la fisier, in loc de data ultimei actualizari pentru optiunile -t sau -l
-c la fisiere se ia in considerare data crearii fisierelor pentru optiunile -t sau -l
-r afiseaza lista in ordine invers alfabetica sau invers criteriului de sortare la optiunea -t
$ls -lsi /usr
Comanda CAT
Afiseaza continutul fisierelor text (similara comenzii TYPE din DOS). Comanda 'cat' poate sa apara si fara nici un argument. In acest caz comanda citeste caracterele tastate la terminal, pina la maximum de 512 caractere, sau pina cind utilizatorul tasteaza <CTRL - D>.
$ cat nume_fisier
Optiuni:
-w operatiile de iesire se fac fara tampon
-s anuleaza mesajele despre inexistenta fisierelor
-v tiparirea caracterelor de control (sub forma ^caracter) a carcterului DEL (sub forma ^?) a caracterelor nonASCII (pe 8 biti), sub forma M-x (unde x este caracterul reprezentat pe ultimii 7 biti)
-t tiparirea caracterului TAB (sub forma SI), cu conditia utilizarii optiunii -v
-e tiparirea caracterului $ la sfirsitul fiecarei linii precedate de caracterul newlinw (efectiv numai daca se utilizeaza optiunea -v)
Comanda CP (copiaza un fisier sau un director)
$cp fisier1 fisier2 (copiaza continutul lui fisier1 in fisier2 suprascriindu-l pe fisier2 daca exista deja)
$cp poem poem.bak (se efectueaza o copie a fisierului poem in poem.bak)
$cp carte1 diverse/carte1 (se copie fisierul carte1 in directorul diverse)
Comanda RM (inlatura -sterge- un fisier)
$rm -r lista_fisiere
Sterge fisierele din lista, optiunea -r fiind utilizata pentru directoare, ea stergind toate fisierele indicate in directorul specificat si intrarea sa in directorul curent.
Comanda de stergere este filtrata de atributele de securitate ale fisierului, din punctul de vedere al utilizatorului care foloseste comanda.
$rm -f c.
$rm -f carte1 (optiunea -f permite fortarea stergerii unui fisier protejat la scriere fara a cere confirmarea actiunii)
Cea mai utila optiune a comenzii 'rm' este '-i' care permite operarea comenzii in mod interactiv:
$rm -i carte1 cap2
carte1:n
cap2:y
$ls
carte1
Optiuni:
-i cere permisiunea de a sterge fisierul inainte de a efectua comanda
-f forteaza stergerea, neraportind eventualele erori
-r sterge toate fisierele din directorul 'dir' de exemplu si apoi sterge directorul insusi
$rm a.out *.o
$rm -r john
Creare/Stergere directoare, comanda MKDIR si RMDIR
Directoarele sint manipulate de comenzile RMDIR si MKDIR.
$rmdir nume-director (are ca efect stergerea directorului, daca utilizatorul are suficiente drepturi)
$mkdir nume-director (are ca efect generarea unui nou director cu numele specificat)
Optiuni la MKDIR:
-m specifica drepturile de acces la noul director
-p creeaza toate directoarele neexistente din numele de cale
Exemplu:
$mkdir john, jock (creeaza directoarele john si jock in directorul curent)
$mkdir -p alpha/beta/gamma (creeaza sbdirectoarele structurii indicate)
Cautare de fisiere sau de directoare, comanda FIND
Este utila pentru determinarea locatiei unor fisiere care respecta anumite criterii, variind de la nume si pina la data crearii lor. Comanda 'find' cauta recursiv descendent in ierarhia de fisiere, de la un punct specificat, si verifica fiecare fisier pentru identificarea conditiei.
$find nume expresie
$find / usr/ana/-name 'cap*' -print (se porneste cautarea din directorul /usr/ana/; conditia este ca toate fisierele sa inceapa cu 'cap'; daca este indeplinita conditia de cautare se vor tipari numele tuturor fisierelor gasite)
Sortare linii in fisiere, comanda SORT
Programul 'sort' sorteaza, ordoneaza liniile dintr-un fisier in ordine alfabetica si/sau numerica. 'sort' este o comanda complexa:
$sort [cmubdfinrt] [+pos [-pos]] [-o iesire] nume]
unde:
b- ignora spatiile suplimentare
d- ordoneaza dupa dictionar numai literele
f- ia in consideratie litere mari si litere mici la sortare
I- ignora caracterele ASCII netiparibile
n- un sir care incepe cu un numar va fi sortat dupa valoarea aritmetica
r- inverseaza sensul sortarii
tx- delimitatori de cimputi sau TAB-uri pentru localizarea cheilor de sortare
c- verifica daca fisierul de sortat nu este deja in secventa dorita
m- combina fisierele sortate
u-elimina dublurile liniilor
o - salveaza rezultatul sortarii intr-un fisier al carui nume este dat in continuarea acestei optiuni
+pos sau -pos desemneaza cimpurile din fisier, chei simple sau compuse dupa care se face sortarea.
$sort telefoane (un exemplu cu fisierul telefoane)
Ion Barbu 401 6182434
Florin Grigore 303 6192119
Ana Ionescu 78 8767164
Comanda KILL (opreste un proces)
Se foloseste pentru a scapa de un proces suspensat cu <CTRL - Z> si care nu se mai doreste sa se restarteze. Trebuie dat insa ID-ul procesului, lucru care se obtine dupa ce s-a tastat 'jobs' pentru listarea job-urilor suspendate si s-a introdus apoi comanda 'ps' pentru a obtine ID.
$kill -x PID1 PID2. unde x are valori de la 1 la 15
$kill -9 numar-PID ('omorire' proces)
Alte semnificatii:
1- 'agatare' proces 4- instructiune ilegala
2- intrerupere 5-executie pas cu pas a procesului
3- iesire din proces 6- instructiune de intrare sau iesire, intrerupere
etc
Comanda MV (redenumire fisiere, mutare fisiere)
$mv fisier1 fisier2. destinatie
$mv cap3 intro (are ca efect schimbarea numelui fisierului 'cap3' in 'intro')
Daca 'intro este nume de director, atunci fisierul 'cap3' este mutat in acest director.
Comanda LN
Cu comanda 'ln' se pot crea nume 'alias' pentru fisiere:
$ln fisier 1 fisier2 dest
Utilizind comanda 'ls' cu optiunea -I se poate observa functionarea comenzii 'ln', cind se atribuie un alias unui fisier din directorul curent.
De exemplu:
$pwd
/usr/dan/programe
$ls -I cap2
1543 cap2
$ln cap2 cap3
$ls -I cap2 cap3
1543 cap2
1543 cap3
Utilitare de cautare dupa sabloane, GREP
Utilitarul 'grep' cauta intr-o lista de fisiere, linie cu linie, indeplinirea unei conditii. Fiecare linie in care se indeplineste conditia este afisata la dispozitivul standard de iesire, iar liniile care nu indeplinesc conditia sint omise.
$ grep Flo telefoane
Florin Grigore 303 619-21-19
Optiuni:
-v afiseaza liniile care nu indeplinesc criteriul de selectie
-b specificarea numarului de bloc
-c specificarea numarului de rinduri gasite
-e expresie - necesara daca expresia incepe cu -
-f fisier - expresia este precizata in fisier (numai la fgrep si egrep)
-h se returneaza numai nume de fisiere in care se afla rinduri corespunzatoare
-n afiseaza numarul liniei gasite
-s se returneaza numai starea
-y considera echivalente majusculele cu literele mici in comparatia dintre criteriu si liniile fisierului
@grep -n 'while' fisier.c
Comanda WC
Contorizeaza numarul de linii, numarul de cuvinte, numarul de caractere dintr-un fisier
$wc rima
4 18 91 rima
Comanda LPR
Listeaza fisierele indicate la imprimanta in regim de 'spooling'
$lpr optiuni f1 f2
Optiuni:
-b nu scrie titlul
-cp nnn - tipareste 'nnn' copii
Comanda CHMOD
Schimba drepturile de acces la un fisier ordinar sau director
$chmod perm_acces f1 f2 ..
Exemplu:
$chmod o-x fisier (sterge dreptul la executie pentru restul utilizatorilor)
Comanda CHOWN, CHGRP
Schimba proprietarul, respectiv grupul unui fisier ordinar sau director.
$chown proprietar f
Exemplu:
$chgrp john /usr/user1/proiect/*
Comanda CMP
Compara doua fisiere
$cmp [-l] [-s] f1 f2
Optiuni:
-l imprima numarul (in zecimal) si valoarea (in octal) pentru fiecare diferenta intilnita
-s rezultatul compararii este furnizat printr-un cod (0=fisiere identice, 1=fisiere sint diferite, 2=eroare)
$cmp -l fisier1 fisier2
Comanda COMM
Selecteaza sau rejecteaza liniile comune din doua fisiere in ASCII sortate
$comm [-[123]] f1 f2
Optiuni:
Comanda are ca rezultat 3 coloane:
prima - liniile numai din f1
a doua- liniile numai din f2
a treia - liniile comune
Exemplu:
$comm -12 f1 f2 (scrie liniile comune)
Comanda DF
Afiseaza numarul blocurilor disponibile pe volumul (discul) specificat (implicit pe toate volumele montate)
$df [fisier_special]
$df /dev/rp1
Comanda DU
Afiseaza numarul blocurilor alocate pe un volum (disc)
$du [-ars] f
f - specifica fie numele unui volum montat, fie numele unui director
Optiuni:
-a genereaza o lista ce contine numele fiecarui fisier si numarul de blocuri alocate
-r scrie mesaje despre directoarele care nu pot fi citite, fisiere ce nu pot fi deschise etc.
-s afiseaza numai numarul total de blocuri alocate
$du -a /usr/user1/dir
Comanda FILE
Determina tipul fisierelor. Daca fisierul este in ASCII, incearca sa determina limbajul (raspunsul poate fi incorect). Daca fisierul este un fisier executabil se indica versiunea.
$file f
Comanda PR
Afiseaza continutul unui fisier cu punere in pagina
$pr [optiuni] f1 f2
Optiuni:
-n afisarea se realizeaza pe n coloane
+n afisarea se realizeaza incepind cu pagina n
-h string - antetul paginii va fi 'string'
-ln numarul de rinduri pe pagina (implicit 66)
-wn latimea paginii in caractere (implicit 72)
-t suprima antetul pe pagina
-d spatiere dubla la iesire intre linii
-p oprirea afisarii inainte de fiecare pagina la terminal (continuarea se face cu <Enter>)
$pr -3dh 'Sistemul Unix' f1 f2 | lpr
Comanda TAIL
Afiseaza un fragment de la inceputul sau sfirsitul fisierului specificat
$tail [optiuni] fisier
Optiuni:
+n afiseaza 'n' linii, blocuri sau caractere de la inceputul fisierului
-n idem, de la sfirsitul fisierului
l afiseaza 'n' linii (optiune implicita)
b afiseaza 'n' blocuri
c afiseaza 'n' caractere
$tail -100 fisier.c
Comunicatia intre procese prin PIPE (|)
Shell-ul permite conectarea a doua procese astfel incit iesirea primului sa constituie intrarea pentru cel de al doilea, astfel:
$comanda1 | comanda2
In acest caz, iesirea standard a primei comenzi este redirectata catre un fisier de tip pipe fara nume, iar inrarea standard a celei de a doua comenzi este redirectata catre acelasi fisier pipe.
Exemplu:
$ls -l user | grep john
In acest caz, comanda 'ls' transmite toate fisierele aflate in directorul 'usr' in fisierul de tip pipe, care constituie intrarea pentru comanda 'grep'. Comanda 'grep' va selecta toate fisierele ale caror proprietar este john si le va afisa la terminal.
Comanda FINGER
Afiseaza date privitoare la un utilizator
$finger nume-utilizator
Operatii de intrare/iesire, redirectari
Fiecare proces care se executa sub UNIX are o sursa de la care primeste intrarile si o destinatie a mesajelor de eroare sau arezultatelor. Sub UNIX sint identificate urmatoarele dispozitive standard de inrare/iesire:
stdin - dispozitiv standard de inrare, consola
stdout - dispozitiv standard de iesire, consola sau imprimanta
stderr - dispozitiv standard de iesire erori
Fiecarui astfel de dispozitiv ii este asociat un descriptor de fisier (fd) respectiv stdin-0, stout-1, stderr-2.
Un fisier special este un fisier asociat unui dispozitiv de inrare/iesire. Toate fisierele speciale sint situate in directorul '/dev '. In filozofia UNIX terminalul la care se lucreaza este pur si simplu un tip de fisier. Daca lucrati la terminalul 'tty03' exista probabil un fisier numit /dev/tty03 in directorul /dev.
Intrarile/iesirile standard se pot modifica utilizind comenzile specifice de redirectare:
redirectare iesire > fisier
redirectare iesire >> fisier ; apendare la iesire
redirectare intrare < fisier
redirectare intrare << cheie ; intrarea standard este luata din Shell
Exemple:
$cat > rima
Roses are Red
Violets are Blue
Sugar is Swett
And so are You.
<^D>
$cat rima
Roses are Red
Violets are Blue
Sugar is Swett
And so are You.
$comanda <sursa> destinatie
$cat < rima > rima.bak
$cat poem.bak
Roses are Red
Violets are Blue
Sugar is Swett
And so are You.
$cat rima
Roses are Red
Violets are Blue
Sugar is Swett
And so are You.
$cat > rima.bak < rima
Sa determinam citi utilizatori sint conectati la un moment dat in sistem:
$w | wc -l sau
$w > temp
$wc -l < temp
$rm temp
Cite fisiere din directorul curent de lucru au fost accestae in luna decembrie:
$ls -l | grep Dec | wc -l
Copyright © 2024 - Toate drepturile rezervate