Differences

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

Link to this comparison view

uso:laboratoare:ac:laborator-02:files [2021/10/14 20:29]
andrei.tivga [Ștergerea directoarelor]
uso:laboratoare:ac:laborator-02:files [2024/10/15 12:45] (current)
ioana_maria.culic [Copierea fișierelor și directoarelor]
Line 2: Line 2:
  
 **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. **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: 
- 
-  * [[https://​www.microsoft.com/​download/​office.aspx | Microsoft Word]] pentru documente; 
-  * browser (de exemplu, [[https://​www.mozilla.org/​ro/​firefox/​new/​ | Firefox]]) pentru o pagină web; 
-  * player audio (de exemplu, Winamp) pentu melodii; 
-  * player video (de exemplu, [[https://​www.videolan.org/​vlc/​ | 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 secțiuni. 
- 
-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. 
- 
-Un motiv în plus pentru a folosi linia de comandă este că folosește mult mai puține resurse decât interfața grafică. Astfel, putem să facem mai multe cu mai puține resurse. 
- 
-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. 
  
 În acest capitol discutăm despre cum interacționăm cu fișierele în linia de comandă. În acest capitol discutăm despre cum interacționăm cu fișierele în linia de comandă.
Line 75: Line 58:
 -rw-r--r-- ​ 1 student student 4827 aug 21  2018 vm-actions-log.txt -rw-r--r-- ​ 1 student student 4827 aug 21  2018 vm-actions-log.txt
 </​code>​ </​code>​
- 
-Interpretăm rezultatele de mai sus: 
- 
-  - Primul caracter ''​%%-%%''​ ne arată că ''​%%examples.desktop%%''​ este un fișier obișnuit. Primul caracter ''​%%d%%''​ ne arată că ''​%%Desktop%%''​ este director. 
-  - Șirurile ''​%%rw-r--r--%%''​ (pentru ''​%%examples.desktop%%''​) și ''​%%rwxr-xr-x%%''​ (pentru ''​%%Desktop%%''​) se referă la permisiuni de acces. Vorbim despre permisiuni de acces în capitolul //​Îmbunătățirea lucrului în linia de comandă//. 
-  - Următorul număr îl îgnorăm pentru moment. 
-  - Următoarele două cuvinte, ''​%%student%%'',​ se referă tot la permisiuni și ownership; le vom discuta într-un capitol ulteror. 
-  - Numărul ''​%% 8980%%''​ arată dimensiunea fișierului ''​%%examples.desktop%%''​. Observăm că directorul ''​%%Desktop%%''​ are dimensiunea de 4096 octeți (//​bytes//​);​ 
-  - Urmează 3 coloane ce arată momentul ultimei modificări. O accesare poate înseamna creare sau modificare. Citirea nu schimbă această dată. 
-  - La final este afișat numele fișierului sau a directorului. 
  
 === Exerciții - afișarea conținutului directoarelor === === Exerciții - afișarea conținutului directoarelor ===
Line 293: Line 266:
      * Mutati directorul (împreună cu întreaga ierarhie de fișiere) la locația ''​%%/​tmp/​%%''​.      * Mutati directorul (împreună cu întreaga ierarhie de fișiere) la locația ''​%%/​tmp/​%%''​.
      * Verificați că directorul și ierarhia de fișiere au fost mutate.      * Verificați că directorul și ierarhia de fișiere au fost mutate.
-  -  
-     * Creați un director ''​%%NBA%%''​ în directorul de la calea ''/​home/​student/​uso_lab02''​. 
-     * Creați fișierele ''​%%MichaelJordan%%'',​ ''​%%LeBronJames%%'',​ ''​%%DwayneWade%%''​ și ''​%%KobeBryant%%''​ în directorul ''​%%NBA%%''​. 
-     * Verificați că directorul și fișierele au fost create. 
-     * Mutați directorul ''​%%NBA%%''​ (împreună cu întreaga ierarhie de fișiere) în directorul ''​%%Vikings%%''​. 
-     * Verificați că directorul și ierarhia de fișiere au fost mutate. 
-  -  
-     * Redenumiți directorul ''​%%GameOfThrones%%''​ în ''​%%ThronesInTheGame%%''​. 
-     * Mutați fișierele din interiorul directorului ''​%%ThronesInTheGame%%''​ în ''​%%/​tmp%%''​. 
-     * Verificați operațiile. 
-     * Mutați directorul înapoi la locatia inițială folosind atât căi relative cât și căi absolute. 
  
 ==== Copierea fișierelor și directoarelor ==== ==== Copierea fișierelor și directoarelor ====
Line 338: Line 300:
 </​code>​ </​code>​
 Am copiat directorul ''​%%Avengers%%''​ și conținutul acestuia din calea curentă în directorul ''​%%/​tmp%%''​. Observăm că s-a copiat întreaga ierarhie de fișiere/​directoare de sub directorul ''​%%Avengers%%''​. Acesta se află acum în ambele locuri. Am copiat directorul ''​%%Avengers%%''​ și conținutul acestuia din calea curentă în directorul ''​%%/​tmp%%''​. Observăm că s-a copiat întreaga ierarhie de fișiere/​directoare de sub directorul ''​%%Avengers%%''​. Acesta se află acum în ambele locuri.
 +
 +<​note>​
 +Vom continua rezolvarea laboratorului săptămâna viitoare.
 +</​note>​
  
 ==== Fișiere și directoare ascunse ==== ==== Fișiere și directoare ascunse ====
Line 365: Line 331:
 Observăm două directoare noi ''​%%.%%''​ și ''​%%..%%''​. Directorul ''​%%.%%''​ este o referință la directorul curent, iar ''​%%..%%''​ este o referință la directorul părinte. Observăm două directoare noi ''​%%.%%''​ și ''​%%..%%''​. Directorul ''​%%.%%''​ este o referință la directorul curent, iar ''​%%..%%''​ este o referință la directorul părinte.
  
-Afișăm conținutul directorului părinte folosind ''​%%ls -l%%'':​ 
- 
-<code bash> 
-student@uso:​~/​uso_lab02$ student@uso:​~/​uso_lab02$ ls -l .. 
-total 60 
-drwxr-xr-x ​ 2 student student 4096 aug  6  2018 Desktop 
-(...) 
-</​code>​ 
 Directorul ''​%%..%%''​ este în cazul nostru echivalent cu ''​%%/​home/​student%%''​. Directorul ''​%%..%%''​ este în cazul nostru echivalent cu ''​%%/​home/​student%%''​.
  
Line 425: Line 383:
     * Creați 3 fișiere ascunse cu numele ''​%%Aragorn%%'',​ ''​%%Legolas%%'',​ ''​%%Frodo Baggins%%''​.     * Creați 3 fișiere ascunse cu numele ''​%%Aragorn%%'',​ ''​%%Legolas%%'',​ ''​%%Frodo Baggins%%''​.
     * Verificați operațiile de creare (director și fișiere).     * Verificați operațiile de creare (director și fișiere).
-  -  
-    * Creați un director cu numele ''​%%stiri%%''​ în directorul de la calea ''/​home/​student/​uso_lab02''​. 
-    * Creați fișierele ''​%%hotnews%%'',​ ''​%%biziday%%'',​ ''​%%digi24%%''​. 
-    * Creați fișierul ascuns ''​%%.cancan%%''​. 
-    * Afișați **toate** fișierele din director. 
-    * Afișați fișierele din director care **nu** sunt ascunse. 
-  -  
-    * Creați un director ''​%%tv%%''​ în directorul de la calea ''/​home/​student/​uso_lab02''​. 
-    * Creați fișierele ''​%%ProTV%%'',​ ''​%%Digi24%%'',​ ''​%%Eurosport%%''​. 
-    * Creați fișierele ascunse ''​%%Antena3%%'',​ ''​%%Romania24%%''​. 
-    * Afișați **toate** fișierele din director. 
-    * Afișați fișierele din director care **nu** sunt ascunse. 
-    * Copiați directorul ''​%%stiri%%''​ împreună cu fișierele de sub acesta în directorul ''​%%tv%%''​. 
-    * Mutați fișierele ''​%%.Antena3%%''​ și ''​%%.Romania24%%''​ în directorul ''​%%/​tmp%%''​. 
- 
- 
-==== Afișarea tipului de fișier ==== 
- 
-O ierarhie de fișiere este formată din directoare și fișiere. Fișierele pot fi de mai multe tipuri: text, binare, imagini, arhive, etc. 
- 
-Pentru a afla tipul fișierului folosim comanda ''​%%file%%'':​ 
- 
-<code bash> 
-student@uso:​~$ file examples.desktop ​ 
-examples.desktop:​ UTF-8 Unicode text 
-student@uso:​~$ file /​usr/​bin/​touch ​ 
-/​usr/​bin/​touch:​ symbolic link to /bin/touch 
-student@uso:​~$ file /​bin/​touch ​ 
-/bin/touch: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /​lib64/​ld-linux-x86-64.so.2,​ for GNU/Linux 3.2.0, BuildID[sha1]=788ca30f103a97f230adfaa558210b6df09cb7c8,​ stripped 
-</​code>​ 
- 
-Observăm că fișierul ''​%%examples.desktop%%''​ este un fișier de tipul //UTF-8// în ciuda extensiei, ''​%%/​usr/​bin/​touch%%''​ este o //​legătură simbolică//,​ iar ''​%%/​usr/​bin/​touch%%''​ este un fișier //binar//. 
- 
-Vom prezenta mai multe detalii în capitolul //​Îmbunătățirea lucrului în linia de comandă//. 
  
-==== Exerciții - ierarhii de fișiere și directoare ====+==== Exerciții ​suplimentare ​- ierarhii de fișiere și directoare ====
  
   - Afișați ierarhia de fișiere pornind de la directorul vostru home (''​%%~%%''​).   - Afișați ierarhia de fișiere pornind de la directorul vostru home (''​%%~%%''​).
Line 554: Line 478:
 -rw-r--r-- 1 student student ​   0 Sep 29 19:04 test -rw-r--r-- 1 student student ​   0 Sep 29 19:04 test
 (...) (...)
-student@uso:/​tmp$ ln -s /​home/​student/​uso_lab02/​test ​+student@uso:/​tmp$ ln -s /​home/​student/​uso_lab02/​test ​my_link
 student@uso:/​tmp$ ls -l student@uso:/​tmp$ ls -l
 (...) (...)
uso/laboratoare/ac/laborator-02/files.1634232585.txt.gz · Last modified: 2021/10/14 20:29 by andrei.tivga
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