Table of Contents

Tema 1

Informații generale

Tema este destinată doar seriei Mecanică. Deadline: 29 Noiembrie 2020 Punctaj: 1p din nota finală

Rezolvarea și trimiterea temei

Pentru a rezolva tema, trebuie să urmați instrucțiunile aferente fiecărui exercițiu și să documentați rezolvarile propuse. Trimiterea temei constă în trimiterea unui document Word sau PDF la adresa ioana_maria.culic@upb.ro.

Documentul trebuie să conțină următoarele informații: Nume, grupa, rezolvarea pentru fiecare exercițiu.

În cadrul exercițiilor se va specifica informația pe care trebuie să o atașți în document. Aceasta constă din screenshot-uri și explicații.

Verificare plagiat

Toate temele vor fi verificate pentru plagiat. În cazul situației de plagiat, atât sursa, cât și destinația vor fi penalizate cu -2p din nota finală a materiei.

Cunoștințe evaluate

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.

Odată ce ați parcurs pașii necesari și ați lansat mașina de Ubuntu, lansați un terminal (click dreapta pe desktop → Open Terminal) și rulați următoarea comandă: ping google.com. Odată ce în terminal apar informații despre traficul pe rețea apăsați combinația de taste Ctrl+c. Faceți un screenshoot terminalului și adăugați-l în documentul aferent temei.

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:

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:

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.

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

Daca terminalul semnaleaza lipsa utilitarului tree, rulati comanda sudo apt-get install tree.

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:

student@uso:~$ ls
Desktop    Downloads        Music     Public    Templates
Documents  examples.Desktop Pictures  snap      Videos

Pentru a naviga într-un alt director folosim comanda cd, iar pentru a vizualiza directorul în care ne aflăm folosim comanda pwd:

student@uso:~$ pwd
/home/student
student@uso:~$ cd /home
student@uso:~$ pwd
/home

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:

student@uso:~$ ls cities
ls: cannot access cities: No such file or directory
student@uso:~$ touch cities
student@uso:~$ ls cities
cities

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:

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

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".

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

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:

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
(...)

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:

Creați următoarele fișiere:

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.