Sunteți pe pagina 1din 12

Lumini]a SCRIPCARIU, Iulian-Dragos SCRIPCARIU

RE}ELE DE CALCULATOARE

ANEXA B
COMENZI UNIX UZUALE

B.1 GENERALIT|}I
Sistemul UNIX lucreaz\ `n mod linie de comand\.
Accesarea unui sistem UNIX se face pe baza numelui de utilizator [i a parolei:
login: nume_utilizator <Enter>
password:
Parola va avea minimum [ase caractere alfanumerice, cu minimum dou\ alfabetice [i
minimum unul nealfabetic `n primele [ase.
Dup\ introducerea corect\ a acestora [i validarea lor, apare prompterul de sistem:
$

pentru Bourne Shell [i Korn Shell

pentru C Shell

pentru contul administratorului de sistem.

Shell-ul emite prompterul [i interpreteaz\ comenzile.


Prima faz\ de interpretare a unei comenzi `n sistemul UNIX const\ `n recunoa[terea numelui
comenzii sau generarea unui mesaj de eroare referitor de sintax\ incorect\.
Shell-urile Bourne [i Korn admit introducerea comenzilor pe mai multe linii, caz `n care pe
urm\toarele linii apare prompterul: >.

225

Lumini]a SCRIPCARIU, Iulian-Dragos SCRIPCARIU

RE}ELE DE CALCULATOARE

Unele comenzi UNIX accept\ exprimarea unor op]iuni [i introducerea de argumente


(caractere, nume de fi[iere sau de directoare), respect=nd sintaxa:
$ comanda [ - optiuni ] [ argumente ] <Enter>
Separarea elementelor din linia de comand\ se face cu unul sau mai multe spa]ii libere [i/sau
tab-uri.
Op]iunile sunt precedate de o cratim\ (-).
Dac\ se exprim\ mai multe comenzi pe aceea[i linie, acestea se separ\ prin 'punct-[i-vigul\'
(;). Se pot introduce comenzi `n timpul execu]iei alteia, fiecare p\str`ndu-se `n memorie p=n\ ce se
termin\ executarea celei precedente.
Observa]ii
1. Combina]ia dintre o tast\ [i tasta CTRL se va nota cu simbolul ^ urmat de acel caracter.
2. {tergerea caracterelor se face cu tasta BackSpace sau ^H.
3. Oprirea din execu]ie a programului curent se face ac]ion=nd ^C care determin\ afi[area
prompterului.
4. ~ntreruperea tuturor proceselor aflate `n execu]ie (kill) se face prin comanda ^U. Se poate
defini alte secven]e pentru diferite porcese dorite, folosind comanda:
stty [-optiuni] [argumente]
stty -a

afi[eaz\ toate caracteristicile terminalului.

stty proces "secventa"

define[te tasta sau combina]ia de taste care determin\


executarea unui proces.

Exemplul 1. Pentru aflarea datei [i a orei, se introduce comanda:


$ date <Enter>
Aceast\ comand\ accept\ exprimarea unor op]iuni [i argumente referitoare la formatul de
afi[are (%d.%m.%Y, %H:%M:%S).
Exemplul 2. Pentru ie[irea din sistem, se d\ comanda:
$ exit <Enter>
sau
$ <CTRL-d>
Exemplul 3. Schimbarea parolei proprii se face cu comanda:
$ passwd <Enter>

226

Lumini]a SCRIPCARIU, Iulian-Dragos SCRIPCARIU

RE}ELE DE CALCULATOARE

Exemplul 4. Definirea secven]ei (Ctrl-H) de [tergere a caracterelor, se face cu comanda:


$ stty erase "^H" <Enter>
Exemplul 5. Secven]a (Ctrl-c) de `ntrerupere a execu]iei unui program, se define[te astfel:
$ stty intr "^C" <Enter>
Exemplul 6. Comanda de afi[are a unui mesaj pe ecran are obligatoriu ca argumente [irul de
caractere care vor fi reprezentate, eventual `ncadrate cu apostroafe dac\ lungimea mesajului
dep\[e[te lungimea liniei de pe ecran:
$ banner ' BINE ATI <Enter>
> VENIT' <Enter>
Se observ\ apari]ia prompterului > pentru continuarea liniei anterioare.
Alte comenzi cu caracter general sunt:
who

comanda de aflare a informa]iilor despre utilizatorii activi la un moment


dat.

who am i

afi[eaz\ numele utilizatorului [i informa]ii despre terminal.

whoami

afi[eaz\ numai numele utilizatorului activ la acel moment, pe terminal.

man [-k|n] termen

afi[eaz\ informa]iile con]inute `n manualul de sistem, referitoare la un cuv=nt

sau o comand\ specificat\ `n argumentul "termen", cu op]iunea -k pentru afi[a toate intr\rile ce
con]in acel termen, sau cu specificarea num\rului sec]iunii dorite din manual (n).
whereis termen

comanda de deducere a sec]iunilor care fac referiri la termenul dorit.

mail

comanda de citire a mesajelor din c\su]a po[tal\ proprie.

mail [destinatar]

comanda de expediere a unui mesaj prin sistemul de po[t\ electronic\

(Expedierea este marcat\ de combina]ia de taste ^d).


write [destinatar]

comand\ de scriere c\tre un alt utilizator, activ la acela[i calculator.

mesg [y|n]

comanda de acordare sau invalidare a permisiunii de scriere la acel terminal

(f\r\ op]iuni, afi[eaz\ setarea anterioar\).


Observa]ii:
Tasta <Space> determin\ afi[area urm\toarei pagini cu informa]ii utile.
Tasta <Enter> permite afi[area urm\toarei linii.
Cu tasta <q> (Quit) se iese din manual.

227

Lumini]a SCRIPCARIU, Iulian-Dragos SCRIPCARIU

RE}ELE DE CALCULATOARE

Afi[area mesajelor se face pe principiul LIFO (Last-In First-Out).


Comanda mail

`[i introduce propriul prompter (?) care poate fi urmat de una din

urm\toarele comenzi:
?

se solicit\ informa]ii ajut\toare (help).

[terge mesajul afi[at din cutia po[tal\ (delete).

s [fisier]

salveaz\ mesajul `n fi[ierul specificat (save).

<Enter>

determin\ afi[area urm\torului mesaj.

idem.

afi[eaz\ mesajul anterior.

![comanda] execut\ o alt\ comand\ UNIX.


q

ie[ire din cutia-po[tal\ cu eventuale modific\ri (quit).

ie[ire din cutia-po[tal\ f\r\ a schimba con]inutul acesteia (exit).

B.2 ORGANIZAREA SISTEMULUI DE FI{IERE SUB UNIX


Sistemul de fi[iere `ntr-un sistem UNIX este organizat ierarhic, sub forma unei diagrame de
tip 'arbore', cu un nod-r\d\cin\ (notat: /), cu directoare, subdirectoare [i fi[iere (Fig.B.1).
Pe primul nivel se g\sesc urm\toarele directoare:
/bin

con]ine fi[ierele de execu]ie a comenzilor pentru opera]iile de baz\ `n


sistemul de operare [i manipulare de fi[iere.

/dev

con]ine driverele componentelor hardware din sistem.

/etc

cuprinde programele accesibile numai administratorului de sistem.

/ux

reprezint\ directorul-sistem, care con]ine sistemul de operare UNIX.

/usr

include comenzi uzuale, altele fa]\ de cele incluse `n directorul /bin.

/tmp

con]ine fi[iere temporare.

/users

include subdirectoarele de lucru [i conturile utilizatorilor.

Structura se ramific\ `n subdirectoare:


/usr/bin

cuprinde comenzi suplimentare, care nu sunt absolut necesare sistemului.

/usr/mail

include ca subdirectoare "cutiile po[tale" (mailboxes) ale utilizatorilor.

/usr/local/bin con]ine aplica]iile dezvoltate local.


/usr/man

reprezint\ manualul cu informa]ii ajut\toare pentru utilizatori.

/users/user1 este directorul creat de c\tre administrator pentru utilizatorul 1.


/users/user2 este directorul creat de c\tre administrator pentru utilizatorul 2 [.a.m.d.

228

Lumini]a SCRIPCARIU, Iulian-Dragos SCRIPCARIU

RE}ELE DE CALCULATOARE

Observa]ie:
La crearea unui director, se definesc automat dou\ directoare, notate "." [i "..", pentru
exprimarea simplificat\ a c\ilor relative `n graf:
.

reprezint\ directorul curent.

..

semnific\ nodul ierarhic superior, adic\ directorul "p\rinte".

Exemplul 7. Din nodul "user1" se definesc urm\toarele c\i cu semnifica]iile specificate:


.

echivalent cu

/users/user1

..

echivalent cu

/users

../..

echivalent cu

./work

echivalent cu

/users/user1/work

../user2

echivalent cu

/users/user2

../../usr

echivalent cu

/usr

B.3 COMENZI DE OPERARE CU DIRECTOARELE


pwd

comanda de determinare a directorului curent (present working directory),


exprim\ calea absolut\ din graf spre directorul curent.

229

Lumini]a SCRIPCARIU, Iulian-Dragos SCRIPCARIU

cd [director]

RE}ELE DE CALCULATOARE

comanda de schimbare a directorului curent (change directory) `n cel


exprimat `n mod relativ sau absolut ca argument al comenzii.
F\r\ argumente, determin\ `ntoarcerea `n directorul de login (home
directory).

mkdir [-p] [director] comand\ de creare a directorului (make directory), eventual a celor
intermediare dac\ nu exist\ (se include op]iunea -p). E admis\ crearea
simultan\ a mai multor directoare. Se exprim\ ca argument fie calea
absolut\, fie una relativ\ pentru fiecare director nou creat.
rmdir [director]

comand\ de [tergere a directorului (remove directory) cu condi]ia s\


nu con]in\ fi[iere sau subdirectoare. E admis\ [tergerea simultan\ a
mai multor directoare.

ls [optiuni] [cale]

comanda de listare (list) a directoarelor [i fi[ierelor subordonate


nodului exprimat prin argumentul "cale", relativ sau absolut. Op]iuni:

-a

listeaz\ toate (all) subdirectoarele [i fi[ierele, inclusiv cele de


configurare, cu prefixul "."

-d

listeaz\ caracteristicile directorului.

-l

listeaz\ atributele tuturor fi[ierelor incluse `n director.

-F

listeaz\ formatat con]inutul directorului (se specific\ sufixul

`n

cazul subdirectoarelor [i sufixul * pentru fi[ierele executabile).


-R

listeaz\ recursiv toate fi[ierele din directorul curent [i din


subdirectoarele subordonate acestuia.

Observa]ie:
Unele sisteme UNIX admit folosirea comenzilor sub form\ prescurtat\. Orice comand\ se
execut\ numai dup\ ac]ionarea tastei <Enter>.
Exemplul 8. Comanda de listare formatat\ a directoarelor [i fi[ierelor subordonate nodului
'r\d\cin\' se d\ sub forma:
$ ls -F<Enter>
sau
$ lsf <Enter>
Exemplul 9. Se aplic\ aceste comenzi pentru nodul "User2". Observa]i efectele lor.
$ pwd

230

Lumini]a SCRIPCARIU, Iulian-Dragos SCRIPCARIU

RE}ELE DE CALCULATOARE

/users/user2
$ ls .. /user1
work

doc1

$ ls -aF /users/user1
work/

.profil

doc1

$ ls ..
user1

user2

$ ls -F ..
user1/

user2/

$ ls -R ..
user1

user2

./user1:
work

doc1

$ ls user1
user1 not found
$ cd ..
$ pwd
/users
$ cd ..
/
$ cd ..
/
$ cd /usr
$ pwd
/usr
$ ls -F .
bin/

mail/

local/

man/

$ mkdir proba
$ pwd
/usr
$ cd ./proba
$ mkdir dir1 dir2
$ ls -F

231

Lumini]a SCRIPCARIU, Iulian-Dragos SCRIPCARIU

dir1/

RE}ELE DE CALCULATOARE

dir2/

$ cd ..
$ rmdir proba
rmdir: proba not empty
$ rmdir

proba/dir1

proba/dir2

proba

$ cd ../bin
$ ls -F
ls*

cp*

rm*

B.4 COMENZI DE OPERARE CU FI{IERELE


Prin fi[ier (file) se `n]elege o colec]ie de date, de natur\ divers\: text, imagine, driver,
executabil, director.
Cu un editor de texte, se introduc caractere ASCII [i se ob]ine un fi[ier obi[nuit (regular
file).
Dac\ se scrie un program folosind un limbaj de programare (C++, Turbo C, Java) se ob]ine
un cod-surs\ care prin compilare devine fi[ier executabil (program file), stocat `ntr-un director de
tip /bin.
Mai multe fi[iere sunt stocate `ntr-un director (directory), care reprezint\ un fi[ier special,
con]in=nd numele [i adresele de memorie ale componentelor, precum [i numerele de identificare ale
acestora `n sistemul de fi[iere (inode number).
Pentru componentele hardware se folosesc fi[iere de tip 'driver', de interfa]are cu sistemul de
operare (kernel), denumite [i fi[iere periferice (device file), stocate `n directorul /dev.
Numele fi[ierului are maximum 255 de caractere alfanumerice [i de punctua]ie: 'punct' (.),
cratim\' (-), 'liniu]\ de subliniere' ( _ ). ~n unele variante de UNIX aceast\ limit\ are valori mai mici,
de exemplu, 14 `n HP-UX.
Ca r\spuns la comanda ls -l, tipul fi[ierului se specific\ pe prima pozi]ie, astfel:
-

fi[ier obi[nuit

director

fi[ier de leg\tur\

fi[ier de re]ea

driver pentru un periferic de afi[are a caracterelor

driver pentru un periferic care lucreaz\ cu blocuri de date

232

Lumini]a SCRIPCARIU, Iulian-Dragos SCRIPCARIU

RE}ELE DE CALCULATOARE

driver pentru un canal de comunica]ie interprocese (pipeline).

Ca atribute ale unui fi[ier se mai specific\, `n afar\ de tipul acestuia, drepturile de acces
(citire, scriere),

num\r de noduri subordonate, nodul ierarhic superior, dimensiunea fi[ierului

exprimat\ `n octe]i, data [i ora c=nd a fost accesat ultima oar\ [i `n final, numele fi[ierului.
Afi[area pe ecran a con]inutului unui fi[ier se poate face fie `n `ntregime, prin comanda cat,
av=nd obligatoriu ca argiment numele fi[ierului, fie segmentat, pagin\ cu pagin\, folosind comanda
more.
Dac\ se dore[te afi[area ultimelor n linii dintr-un fi[ier, atunci se d\ comanda:
tail [-n] [nume fisier]
Alte comenzi de operare cu fi[ierele sunt urm\toarele.
Comanda de copiere:
cp [-optiuni] [fisier1] [director|fisier2]
Se copie fisierul 1 `ntr-un nou fi[ier 2, creat `n acela[i director dac\ nu se precizeaz\ alt
director, sau `ntr-un fi[ier cu acela[i nume (fisier1) dar `n directorul specificat de cel de-al doilea
argument al comenzii, eventual sub un alt nume (fisier2) dac\ este dat `n comand\.
Primul argument poate fi multiplu, cu condi]ia ca destina]ia s\ fie un director.
Op]iunile comenzii pot fi:
-i

de operare interactiv\, pentru a se cere acordul `n cazul suprascrierii unui fi[ier deja
existent.

-r

de operare recursiv\, `n cazul `n care dorim s\ copiem `n `ntregime un director `n alt


director.

Mutarea sau redenumirea unui fi[ier (director) se face cu comanda:


mv [-optiuni] [director|fisier1]

[director|fisier2]

{i `n acest caz, ca argumente se folosesc c\i absolute sau relative ale unor fi[iere sau
directoare.
Op]iunea de operare interactiv\ - i ne avertizeaz\ `n cazul `n care exist\ deja la destina]ie un
fi[ier cu acela[i nume ce urmeaz\ a fi rescris.
Comanda de mutare a fi[ierelor difer\ de cea de copiere prin faptul c\ nu se creeaz\ fi[iere
noi, num\rul total de fi[iere nu se modific\.
Comanda de [tergere a unui fi[ier sau a con]inutului unui director este:
rm [-optiuni] [director|fisier]
~n acest caz, este indicat\ folosirea op]iunii de operare interactiv\ - i .

233

Lumini]a SCRIPCARIU, Iulian-Dragos SCRIPCARIU

RE}ELE DE CALCULATOARE

{tergerea tuturor fi[ierelor dintr-un director este posibil\ prin includerea `n linia de comand\
a op]iunii de operare recursiv\ - r, fiind recomandat\ exprimarea ambelor op]iuni - ir. Spre
deosebire de comanda

rmdir `n acest caz, directorul exist\ `n continuare, dar nu mai con]ine

nimic.
Op]iunea

- f determin\ [tergerea necondi]ionat\, f\r\ avertismente a tuturor fi[ierelor

specificate `n lista de argumente.


Exemplul 10. Se consider\ nodul curent user1. Observa]i efectele urm\toarelor comenzi:
$ pwd
/users/user1
$ ls -F
work/

doc1

$ ls work
doc2
$ cp doc1 work
$ ls work
doc1 doc2
$ cp doc1 doc3
$ ls -F
work/

doc1

doc3

$ cat doc1
Acesta este un fisier de test.
Se foloseste pentru exemplificarea comenzilor.
$ cat doc3
Acesta este un fisier de test.
Se foloseste pentru exemplificarea comenzilor.
$ tail -1 doc3
Se foloseste pentru exemplificarea comenzilor.
$ ls .. /user2
ls: user2 is empty
$ cp doc1 doc3 .. /user2
$ ls .. /user2
doc1 doc3

234

Lumini]a SCRIPCARIU, Iulian-Dragos SCRIPCARIU

RE}ELE DE CALCULATOARE

$ cp -ri work .. /user2


$ cd .. /user2
$ ls -FR
work/

doc1

doc3

./work:
doc1

doc2

$ mv doc3 work
$ ls -F
work/

doc1

$ ls work
doc1

doc2

doc3

$ mv work test
$ ls -F
test/

doc1

$ ls test
doc1

doc2

doc3

$ rm -i doc1
doc1? y
$ cat doc1
cat: cannot open doc1
$ ls -F
test/
$ rm test
rm: test directory
$ rm -r test
$ ls test
test is empty
$ ls -F
test/
$ rmdir test
$ ls
user2 is empty
$ cd ..

235

Lumini]a SCRIPCARIU, Iulian-Dragos SCRIPCARIU

RE}ELE DE CALCULATOARE

$ mv user1 user2
$ ls user1
user1 is empty
$ ls user2
work

doc1

Observa]ie:
~n cazul oper\rii interactive, utilizatorul poate
negativ, prin n (no) sau <Enter>.

236

r\spunde afirmativ, tast=nd y (yes), ori

S-ar putea să vă placă și