Differences

This shows you the differences between two versions of the page.

Link to this comparison view

info1:teme:01 [2020/11/11 19:21]
ioana_maria.culic removed
info1:teme:01 [2020/11/11 21:39] (current)
ioana_maria.culic created
Line 23: Line 23:
  
 ==== Cunoștințe evaluate ==== ==== Cunoștințe evaluate ====
 +  * Folosirea terminalului Linux
   * Lucrul cu sistemul de fișiere;   * Lucrul cu sistemul de fișiere;
-  * Procese; 
-  * Utilizatori,​ grupuri și permisiuni. 
  
 ==== Exercițiul 1 ==== ==== Exercițiul 1 ====
  
-Urmați instrucțiunile din laboratorul 1 și rulați mașina virtuală **USO.ova** folosind VirtualBox sau un alt program, la alegere.+Urmați instrucțiunile din [[info1:​laboratoare:​01|laboratorul 1]] și rulați mașina virtuală **USO.ova** folosind VirtualBox sau un alt program, la alegere.
  
  
Line 35: Line 34:
  
 ==== Exercițiul 2 ==== ==== Exercițiul 2 ====
 +
 +
 +În această secțiune vom învăța să lucrăm cu fișierele și directoarele în linia de comandă.
 +
 +Fișierul este unitatea de bază folosită pentru a stoca informații. Fie că este vorba despre un document (tema la mate) sau un joc, fie că este vorba de o configurare în sistemul de operare, sau chiar sistemul de operare, folosim fișiere pentru stocare.
 +
 +Putem interacționa cu fișiere folosind programe specifice:
 +
 +  * Microsoft Word pentru documente;
 +  * browser (de exemplu, Firefox) pentru o pagină web;
 +  * player audio (de exemplu, Winamp) pentu melodii;
 +  * player video (de exemplu, Vlc) pentru filme.
 +
 +Acestea au în comun o interfață grafică. O altă opțiune este să interacționăm cu fișierele în linia de comandă. Acesta este subiectul acestei sectiuni.
 +
 +Folosim linia de comandă pentru interacțiunea cu fișierele în mai multe cazuri:
 +
 +  * Atunci când sistemul pe care ne aflăm are **doar** linie de comandă;
 +  * Atunci când putem să facem anumite operații **mai repede** decât în interfața grafică; putem folosi automatizarea unor sarcini (taskuri): scriem un script (un fișier de automatizare) o dată și îl executăm de fiecare dată când este nevoie. Există un capitol întreg //​Îmbunătățirea lucrului în linia de comandă// unde vom afla mai multe detalii.
 +
 +Componenta ce se ocupă de interpretarea comenzilor se numește //shell//. Shellul citește comenzile date de utilizator, le interpretează și comunică sistemului de operare ce are de făcut.
 +
 +
 +===== Ierarhie de fișiere =====
 +
 +Un exemplu de ierarhie de fișier este în secțiunea //Căi în ierarhia de fișiere//.
 +
 +Pentru a vedea fișierele sub formă arborescentă,​ folosim comanda ''​%%tree%%''​.
 +
 +<code bash>
 +student@uso:​~r$ tree -L 1 /
 +/
 +|-- bin
 +|-- boot
 +|-- dev
 +|-- etc
 +|-- home
 +|-- initrd.img -> /​boot/​initrd.img-3.16.0-4-586
 +|-- lib
 +|-- lib64
 +|-- libx32
 +|-- lost+found
 +|-- media
 +|-- mnt
 +|-- opt
 +|-- proc
 +|-- root
 +|-- run
 +|-- sbin
 +|-- srv
 +|-- sys
 +|-- tmp
 +|-- usr
 +|-- var
 +``-- vmlinuz -> boot/​vmlinuz-3.16.0-4-586
 +</​code>​
 +
 +<note warning> Daca terminalul semnaleaza lipsa utilitarului tree, rulati comanda **sudo apt-get install tree**.</​note>​
 +
 +Atașați un screenshot după ce ați rulat comanda tree in documentul aferent temei.
 +
 +==== Afișarea conținutului unui director ====
 +
 +Așa cum un dosar are mai multe foi în el, la fel și directoarele au mai multe fișiere și directoare în ele.
 +
 +Pentru a afișa conținutul unui director folosim comanda ''​%%ls%%'':​
 +
 +<code bash>
 +student@uso:​~$ ls
 +Desktop ​   Downloads ​       Music     ​Public ​   Templates
 +Documents ​ examples.Desktop Pictures ​ snap      Videos
 +</​code>​
 +
 +Pentru a naviga într-un alt director folosim comanda ''​%%cd%%'',​ iar pentru a vizualiza directorul în care ne aflăm folosim comanda ''​%%pwd%%'':​
 +<code bash>
 +student@uso:​~$ pwd
 +/​home/​student
 +student@uso:​~$ cd /home
 +student@uso:​~$ pwd
 +/home
 +</​code>​
 +
 +Atașați un screenshot cu terminalul în care ați rulat comenzile de mai sus si atașați-l în documentul aferent temei.
 +
 +==== Crearea fișierelor ====
 +
 +Există situații când vrem să creăm fișiere. De exemplu vrem să scriem cod sau să luăm notițe la un curs.
 +
 +Fișierele se creează folosind utilitarul ''​%%touch%%''​.
 +
 +Creăm un fișier astfel:
 +
 +<code bash>
 +student@uso:​~$ ls cities
 +ls: cannot access cities: No such file or directory
 +student@uso:​~$ touch cities
 +student@uso:​~$ ls cities
 +cities
 +</​code>​
 +
 +Dacă vrem să creăm un fișier cu numele ''​%%orașe romania%%'',​ adică vrem ca numele fișierului să conțină caracterul //spațiu (space)//, folosim tot comanda ''​%%touch%%''​ ca în exemplul de mai jos:
 +
 +<code bash>
 +student@uso:​~$ touch cities romania
 +student@uso:​~$ ls -l
 +(...)
 +-rw-rw-r-- 1 student student ​   0 Oct 13 13:02 cities
 +-rw-r--r-- 1 student student 8980 Sep 24 09:00 examples.desktop
 +-rw-rw-r-- 1 student student ​   0 Oct 13 13:02 romania
 +drwxr-xr-x 4 student student 4096 Oct  2 03:11 snap
 +</​code>​
 +Observăm că în comanda de mai sus am încercat să creăm un fișier numit ''​%%cities romania%%'',​ însă au fost create două fișiere. Pentru a crea un fișier cu //spații (space)// inclus în nume este nevoie să folosim ghilimelele la începutul și sfârșitul numelui astfel: ''​%%touch "​cities romania"​%%''​.
 +
 +<code bash>
 +student@uso:​~$ touch "​cities in romania"​
 +student@uso:​~$ ls -l
 +(...)
 +-rw-rw-r-- 1 student student ​   0 Oct 13 13:02  cities
 +-rw-rw-r-- 1 student student ​   0 Oct 13 13:03 '​cities in romania'​
 +-rw-r--r-- 1 student student 8980 Sep 24 09:00  examples.desktop
 +-rw-rw-r-- 1 student student ​   0 Oct 13 13:02  romania
 +drwxr-xr-x 4 student student 4096 Oct  2 03:11  snap
 +</​code>​
 +Acum avem în directorul ''​%%~%%''​ 3 fișiere în plus: ''​%%cities%%'',​ ''​%%cities in romania%%'',​ ''​%%romania%%''​.
 +
 +Atașați un screenshot cu terminalul în care ați rulat comenzile de mai sus si atașați-l în documentul aferent temei.
 +
 +==== Crearea directoarelor ====
 +
 +Este util să creăm directoarele atunci când vrem să păstrăm fișierele din sistem într-un mod organizat. De exemplu, putem crea câte un director pentru fiecare an de licență. Pentru fiecare an/​director,​ cream câte un director pentru fiecare materie si pentru fiecare materie putem să facem directoare pentru teme, laboratoare,​ cursuri etc.
 +
 +Creăm directoarele folosind utilitarul ''​%%mkdir%%''​. Etimologia comenzii provine din limba engleză - //make directory//​.
 +
 +Creăm un directoarele ''​%%GameOfThrones%%''​ și ''​%%Avengers%%''​ în directorul ''​%%~%%''​ ca în exemplul de mai jos:
 +
 +<code bash>
 +student@uso:​~$ mkdir GameOfThrones
 +student@uso:​~$ mkdir Avengers
 +student@uso:​~$ ls -l
 +total 56
 +drwxrwxr-x 2 student student 4096 Oct 13 13:17  Avengers
 +(...)
 +drwxrwxr-x 2 student student 4096 Oct 13 13:17  GameOfThrones
 +(...)
 +</​code>​
 +Am creat 2 directoare noi: ''​%%Avengers%%''​ și ''​%%GameOfThrones%%''​.
 +
 +Atașați un screenshot cu terminalul în care ați rulat comenzile de mai sus si atașați-l în documentul aferent temei.
 +
 +==== Exercițiul 3 ====
 +
 +Creați următoarele directoare:
 +  * /​home/​student/​filme
 +  * /​home/​student/​filme/​seriale
 +  * /​home/​student/​filme/​comedie
 +  * /​home/​student/​actori
 +
 +Creați următoarele fișiere:
 +  * /​home/​student/​filme/​review
 +  * /​home/​student/​filme/​seriale/​Scrubs
 +  * /​home/​student/​filme/​seriale/​Futurama
 +  * /​home/​student/​filme/​seriale/​Modern Family
 +  * /​home/​student/​filme/​comedie/​Airplane
 +  * /​home/​student/​filme/​comedie/​American Pie
 +  * /​home/​student/​actori/​Jennifer Lawrence
 +  * /​home/​student/​actori/​Tom Hanks
 +
 +Pe măsură ce creați directoarele și fișiere, scrieți în document comenzile folosite (puteți face screen-shoots pe parcurs și să le adaugați în document în locul comenzilor efective).
 +
 +Folosiți ​ comanda **tree** pentru a afișa ierarhia obținută. Faceți un screenshot terminalului și atașați-l în documentul aferent temei.
 +
 +====Exercițiul 4 ====
 +Navigați în directorul **/​home/​student/​filme** și afișați directorul curent. Explicați comenzile utilizate și atașați un screenshot în documentul aferent temei.
 +
 +====Exercițiul 5====
 +Folosiți o cale relativă pentru a naviga în directorul **/​home/​student/​actori** și afișați directorul curent. Explicați cum ați rezolvat exercițiul și atașați un screenshot în documentul aferent temei.
 +
  
  
info1/teme/01.1605115271.txt.gz · Last modified: 2020/11/11 19:21 by ioana_maria.culic
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0