Extras din laborator
Shell Unix
Shell-ul este principala interfată de comunicare între utilizator si sistemul de
operare. Desi, în mod intuitiv, shell-ul este identificat cu o interfată în linia de
comandă, poate fi si o interfată grafică. Un exemplu îl constituie aplicatia Explorer a
sistemului de operare Windows.
În continuare ne vom oferi la interfata de tip CLI (Command Line Interface)
oferită de sistemele de operare UNIX. Desi este mai greu de învătat decât o interfată
grafică, CLI permite un control mult mai bun al sistemului. Mai mult, shell-ul
dispune de un limbaj de programare.
Un program shell, denumit script shell, este folosit pentru a îmbina mai multe
comenzi si diverse structuri de control pentru a obtine o nouă functionalitate sau
pentru automatizarea sarcinilor. În acest fel un script shell este un instrument
esential pentru sarcinile administrative si alte rutine repetitive care nu necesită
functionalităti ale unor limbaje de programare avansate.
În cadrul laboratoarelor ne vom referi la shell-ul Bash (Bourne Again SHell).
Există si alte shell-uri pe sisteme UNIX precum tcsh, zsh, ash, etc. De curând,
Microsoft oferă PowerShell pe sistemele Windows. PowerShell are o abordare
orientată pe obiecte si un set de functionalităti care acoperă nevoile de administrare
ale unui sistem Windows.
Exemplu “Hello world”
Un script simplu care doar afisează mesajul "Hello, World!" este următorul:
#!/bin/bash
# afiseaza mesaj
echo "Hello, World!"
exit 0
Este necesar ca fisierul să fie executabil pentru a putea fi interpretat. Acest
lucru se poate realiza cu ajutorul comenzii chmod care conferă in acest caz dreptul de
executie proprietarului fisierului :
$> chmod u+x hello.sh
Sirul #! de la începutul fisierului poartă denumirea de shebang. Acesta indică
sistemului ce program va fi invocat pentru a interpreta scriptul. Un script poate fi
rulat si prin precizarea explicită a interpretorului în linia de comandă:
$> bash hello.sh
În această situatie nu este nevoie ca scriptul sa fie executabil si nici nu este
nevoie de prezenta liniei #!/bin/bash. Caracterul # semnifică începutul unui
comentariu care durează pană la sfârsitul liniei. Comanda exit este folosită pentru a
indica valoarea de retur a scriptului. Implicit aceasta valoare este 0 (cu alte cuvinte
nu era necesar să apară în script).
Comenzi UNIX uzuale
Comanda ls
Listează continutul directoarelor.
Sintaxa: ls [optiuni] director Optiuni:
-d // afisează numai directoarele din directorul curent.
-l // afisează informatiile în format lung: drepturi de acces, număr de legături,
mărimea, etc.
-s // afisează numărul de blocuri pentru fiecare fisier.
-t // fisierele sunt sortate după data ultimei actualizări
Exemplu: ls -lt /usr
Comanda chmod
Schimba drepturile de acces la un fisier ordinar sau director.
Sintaxa: chmod atr fisier(e)
atributul se exprimă ca un număr octal din patru cifre sau printr-o combinatie de
forma:
[u | g | o | a] [+ | - | =] [r | w | x ]
+ adaugă permisiune ; - sterge permisiune; = atribuie permisiune
u - proprietarul ; g – grupul ; o - restul utilizatorilor ; a – toti utilizatorii
r – Read ; w – Write ; x – eXecute
Exemplu:
chmod o-x f1 // Sterge dreptul la executie pentru restul utilizatorilor.
chmod 0774 f1 // Fisierul f1 va avea permisiunile de acces rwxrwxr--.
Preview document
Conținut arhivă zip
- Sisteme de Operare
- Comenzi Unix.pdf
- Elemente SHELL .pdf
- Fisiere.pdf
- Pipeuri.pdf
- Procese.pdf
- Semnale.pdf
- Supliment SHELL.pdf