Differences

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

Link to this comparison view

sda-ab:ghidlinux [2020/12/24 12:44]
ruben_gilian.udroiu created
sda-ab:ghidlinux [2020/12/24 12:56] (current)
ruben_gilian.udroiu [GNU Compiler]
Line 16: Line 16:
   * cd [nume] = navigam catre directorul cu numele specificat (daca acesta poate fi accesat din calea curenta)   * cd [nume] = navigam catre directorul cu numele specificat (daca acesta poate fi accesat din calea curenta)
 <code bash> <code bash>
-sergiu@SERGIU:/mnt/c$ cd Users +SDA-AB@SDA-AB:/mnt/c$ cd Users 
-sergiu@SERGIU:/​mnt/​c/​Users$ ls +SDA-AB@SDA-AB:/​mnt/​c/​Users$ ls 
-'All Users' ​  ​Default ​ '​Default User' ​  ​Public ​  ​desktop.ini ​  sergi +'All Users' ​  ​Default ​ '​Default User' ​  ​Public ​  ​desktop.ini ​  sda 
-sergiu@SERGIU:/​mnt/​c/​Users$ cd sergi +SDA-AB@SDA-AB:/​mnt/​c/​Users$ cd sda 
-sergiu@SERGIU:/​mnt/​c/​Users/​sergi$ cd Desktop/ +SDA-AB@SDA-AB:/​mnt/​c/​Users/​sda$ cd Desktop/ 
-sergiu@SERGIU:/​mnt/​c/​Users/​sergi/Desktop$ cd.. +SDA-AB@SDA-AB:/​mnt/​c/​Users/​sda/Desktop$ cd.. 
-sergiu@SERGIU:/​mnt/​c/​Users/​sergi+SDA-AB@SDA-AB:/​mnt/​c/​Users/​sda
 </​code>​ </​code>​
 Mai multe informatii despre aceasta comanda [[https://​man7.org/​linux/​man-pages/​man1/​cd.1p.html|in acest link.]] Mai multe informatii despre aceasta comanda [[https://​man7.org/​linux/​man-pages/​man1/​cd.1p.html|in acest link.]]
Line 28: Line 28:
 Comanda **ls** (list) listeaza continutul unui director si este folosita pentru a afisa fisierele/​directoarele dintr-un director/​subdirector. Comanda **ls** (list) listeaza continutul unui director si este folosita pentru a afisa fisierele/​directoarele dintr-un director/​subdirector.
 <code bash> <code bash>
-sergiu@SERGIU:/​mnt/​c/​Users$ ls +SDA-AB@SDA-AB:/​mnt/​c/​Users$ ls 
-'All Users' ​  ​Default ​ '​Default User' ​  ​Public ​  ​desktop.ini ​  sergi+'All Users' ​  ​Default ​ '​Default User' ​  ​Public ​  ​desktop.ini ​  sda
 </​code>​ </​code>​
 Mai multe informatii despre comanda **ls** [[https://​man7.org/​linux/​man-pages/​man1/​ls.1.html|in acest link.]] Mai multe informatii despre comanda **ls** [[https://​man7.org/​linux/​man-pages/​man1/​ls.1.html|in acest link.]]
Line 35: Line 35:
 Comanda **mkdir** (make directory) creeaza un director (sau mai multe) daca acesta nu exista deja. Comanda **mkdir** (make directory) creeaza un director (sau mai multe) daca acesta nu exista deja.
 <code bash> <code bash>
-sergiu@SERGIU:/​mnt/​c/​Users$ ls +SDA-AB@SDA-AB:/​mnt/​c/​Users$ ls 
-'All Users' ​  ​Default ​ '​Default User' ​  ​Public ​  ​desktop.ini ​  sergi +'All Users' ​  ​Default ​ '​Default User' ​  ​Public ​  ​desktop.ini ​  sda 
-sergiu@SERGIU:/​mnt/​c/​Users$ mkdir POO +SDA-AB@SDA-AB:/​mnt/​c/​Users$ mkdir SDA-AB 
-sergiu@SERGIU:/​mnt/​c/​Users$ ls +SDA-AB@SDA-AB:/​mnt/​c/​Users$ ls 
-'All Users' ​  ​Default ​ '​Default User' ​  ​Public ​  ​desktop.ini ​  sergi POO+'All Users' ​  ​Default ​ '​Default User' ​  ​Public ​  ​desktop.ini ​  sda   ​SDA-AB
 </​code>​ </​code>​
 Mai multe informatii despre comanda **mkdir** [[https://​man7.org/​linux/​man-pages/​man1/​mkdir.1.html|in acest link.]] Mai multe informatii despre comanda **mkdir** [[https://​man7.org/​linux/​man-pages/​man1/​mkdir.1.html|in acest link.]]
Line 45: Line 45:
 Comanda **rmdir** (delete a directory) sterge un director existent care nu contine fisiere. Comanda **rmdir** (delete a directory) sterge un director existent care nu contine fisiere.
 <code bash> <code bash>
-sergiu@SERGIU:/​mnt/​c/​Users$ ls +SDA-AB@SDA-AB:/​mnt/​c/​Users$ ls 
-'All Users' ​  ​Default ​ '​Default User' ​  ​Public ​  ​desktop.ini ​  sergi +'All Users' ​  ​Default ​ '​Default User' ​  ​Public ​  ​desktop.ini ​  sda 
-sergiu@SERGIU:/​mnt/​c/​Users$ mkdir POO +SDA-AB@SDA-AB:/​mnt/​c/​Users$ mkdir SDA-AB 
-sergiu@SERGIU:/​mnt/​c/​Users$ ls +SDA-AB@SDA-AB:/​mnt/​c/​Users$ ls 
-'All Users' ​  ​Default ​ '​Default User' ​  ​Public ​  ​desktop.ini ​  sergi POO +'All Users' ​  ​Default ​ '​Default User' ​  ​Public ​  ​desktop.ini ​  sda SDA-AB 
-sergiu@SERGIU:/​mnt/​c/​Users$ rmdir POO +SDA-AB@SDA-AB:/​mnt/​c/​Users$ rmdir SDA-AB 
-sergiu@SERGIU:/​mnt/​c/​Users$ ls +SDA-AB@SDA-AB:/​mnt/​c/​Users$ ls 
-'All Users' ​  ​Default ​ '​Default User' ​  ​Public ​  ​desktop.ini ​  sergi+'All Users' ​  ​Default ​ '​Default User' ​  ​Public ​  ​desktop.ini ​  sda
 </​code>​ </​code>​
 == rm == == rm ==
 Comanda **rm** (remove) sterge un fisier sau un director. Daca directorul pe care vrem sa il stergem contine alte fisiere la randul lui, putem folosi comanda **rm -f** care sterge fortat acel director. Comanda **rm** (remove) sterge un fisier sau un director. Daca directorul pe care vrem sa il stergem contine alte fisiere la randul lui, putem folosi comanda **rm -f** care sterge fortat acel director.
 <code bash> <code bash>
-sergiu@SERGIU:/​mnt/​c/​Users$ ls +SDA-AB@SDA-AB:/​mnt/​c/​Users$ ls 
-'All Users' ​  ​Default ​ '​Default User' ​  ​Public ​  ​desktop.ini ​  sergi +'All Users' ​  ​Default ​ '​Default User' ​  ​Public ​  ​desktop.ini ​  sda 
-sergiu@SERGIU:/​mnt/​c/​Users$ mkdir POO +SDA-AB@SDA-AB:/​mnt/​c/​Users$ mkdir SDA-AB 
-sergiu@SERGIU:/​mnt/​c/​Users$ ls +SDA-AB@SDA-AB:/​mnt/​c/​Users$ ls 
-'All Users' ​  ​Default ​ '​Default User' ​  ​Public ​  ​desktop.ini ​  sergi POO +'All Users' ​  ​Default ​ '​Default User' ​  ​Public ​  ​desktop.ini ​  sda SDA-AB 
-sergiu@SERGIU:/​mnt/​c/​Users$ rm POO +SDA-AB@SDA-AB:/​mnt/​c/​Users$ rm SDA-AB 
-sergiu@SERGIU:/​mnt/​c/​Users$ ls +SDA-AB@SDA-AB:/​mnt/​c/​Users$ ls 
-'All Users' ​  ​Default ​ '​Default User' ​  ​Public ​  ​desktop.ini ​  sergi+'All Users' ​  ​Default ​ '​Default User' ​  ​Public ​  ​desktop.ini ​  sda
 </​code>​ </​code>​
 Mai multe informatii despre comanda **rm** [[https://​man7.org/​linux/​man-pages/​man1/​rm.1.html|in acest link.]] Mai multe informatii despre comanda **rm** [[https://​man7.org/​linux/​man-pages/​man1/​rm.1.html|in acest link.]]
Line 71: Line 71:
 Presupunem ca avem urmatorul text in fisierul poo.txt: ,,​Programare orientata pe obiecte"​ Presupunem ca avem urmatorul text in fisierul poo.txt: ,,​Programare orientata pe obiecte"​
 <code bash> <code bash>
-sergiu@SERGIU:/​mnt/​c/​Users$ ls +SDA-AB@SDA-AB:/​mnt/​c/​Users$ ls 
-'All Users' ​  ​Default ​ '​Default User' ​  ​Public ​  ​desktop.ini ​  sergi poo.txt +'All Users' ​  ​Default ​ '​Default User' ​  ​Public ​  ​desktop.ini ​  sda sda.txt 
-sergiu@SERGIU:/​mnt/​c/​Users$ cat poo.txt +SDA-AB@SDA-AB:/​mnt/​c/​Users$ cat sda.txt 
-Programare orientata pe obiecte +Structuri de Date si Algoritmi 
-sergiu@SERGIU:/​mnt/​c/​Users$+SDA-AB@SDA-AB:/​mnt/​c/​Users$
 </​code>​ </​code>​
 == chmod == == chmod ==
Line 86: Line 86:
   * 1 = are permisiune de stergere (execute)   * 1 = are permisiune de stergere (execute)
  
-Exemplu: daca apelam chmod 756 program.cpp inseamna ca utilizatorul principal are drepturi depline (4+2+1), grupul de utilizatori are permisiuni de citire si stergere (4+1), iar pentru others avem permisiune de citire si scriere(4+2). Daca in loc de 6 aveam 0, insemna ca revocam toate permisiunile pentru others asupra fisierului ,,program.cpp"</​note>​+Exemplu: daca apelam chmod 756 program.inseamna ca utilizatorul principal are drepturi depline (4+2+1), grupul de utilizatori are permisiuni de citire si stergere (4+1), iar pentru others avem permisiune de citire si scriere(4+2). Daca in loc de 6 aveam 0, insemna ca revocam toate permisiunile pentru others asupra fisierului ,,program.c"</​note>​
 Mai multe informatii despre aceasta comanda [[https://​www.howtoforge.com/​tutorial/​linux-chmod-command/​|in acest link.]] Mai multe informatii despre aceasta comanda [[https://​www.howtoforge.com/​tutorial/​linux-chmod-command/​|in acest link.]]
 == sudo == == sudo ==
 Comanda **sudo** (substitute user do) permite utilizatorului sa aiba privilegii de **root** (high level). Este recomandat sa evitam pe cat de mult posibil utilizarea comenzilor folosind sudo pentru ca, in anumite circumstante,​ putem sa provocam avarii sistemului de operare. In cadrul laboratorului de POO nu o sa abuzam aceasta comanda. ​ Comanda **sudo** (substitute user do) permite utilizatorului sa aiba privilegii de **root** (high level). Este recomandat sa evitam pe cat de mult posibil utilizarea comenzilor folosind sudo pentru ca, in anumite circumstante,​ putem sa provocam avarii sistemului de operare. In cadrul laboratorului de POO nu o sa abuzam aceasta comanda. ​
 <code bash> <code bash>
-sergiu@SERGIU:/​mnt/​c/​Users$ sudo ls +SDA-AB@SDA-AB:/​mnt/​c/​Users$ sudo ls 
-[sudo] password for sergiu:  +[sudo] password for SDA-AB:  
-'All Users' ​  ​Default ​ '​Default User' ​  ​Public ​  ​desktop.ini ​  sergi+'All Users' ​  ​Default ​ '​Default User' ​  ​Public ​  ​desktop.ini ​  sda
 </​code>​ </​code>​
 Mai multe informatii despre aceasta comanda[[https://​man7.org/​linux/​man-pages/​man8/​sudo.8.html|in acest link.]] Mai multe informatii despre aceasta comanda[[https://​man7.org/​linux/​man-pages/​man8/​sudo.8.html|in acest link.]]
Line 99: Line 99:
 Aceasta comanda este folosita pentru a instala un anumit pachet (exemple: sublime, chrome etc.). Deoarece un element strain este vazut ca un eventual ,,​pericol"​ pentru sistemul de operare, trebuie sa fortam sistemul sa execute aceasta comanda, de aceea trebuie sa folosim comanda **sudo**. Aceasta comanda este folosita pentru a instala un anumit pachet (exemple: sublime, chrome etc.). Deoarece un element strain este vazut ca un eventual ,,​pericol"​ pentru sistemul de operare, trebuie sa fortam sistemul sa execute aceasta comanda, de aceea trebuie sa folosim comanda **sudo**.
 <code bash> <code bash>
-sergiu@SERGIU:/​mnt/​c/​Users$ sudo apt-get install sublime-text +SDA-AB@SDA-AB:/​mnt/​c/​Users$ sudo apt-get install sublime-text 
-[sudo] password for sergiu+[sudo] password for SDA-AB
 Reading package list... Done Reading package list... Done
 </​code>​ </​code>​
Line 107: Line 107:
 Sistemul de operare Linux este prevazut un compilator care, la inceput, suporta doar limbajul C. Cu timpul, GNU Compiler, s-a extins si ofera suport si pentru limbajele C++, Java, Fortran, Objective-C. ​ Sistemul de operare Linux este prevazut un compilator care, la inceput, suporta doar limbajul C. Cu timpul, GNU Compiler, s-a extins si ofera suport si pentru limbajele C++, Java, Fortran, Objective-C. ​
 Daca nu avem preinstalat acest compilator pe versiunea noastra de Linux il putem obtine folosind comanda: Daca nu avem preinstalat acest compilator pe versiunea noastra de Linux il putem obtine folosind comanda:
-<note important>​sudo apt-get install ​g++</​note>​ +<note important>​sudo apt-get install ​gcc</​note>​ 
-In decursul laboratorului de POO o sa avem nevoie de un tool suplimentar care automatizeaza procesul de compilare a aplicatiilor (cu ajutorul makefile-urilor),​ **GNU Make**.+In decursul laboratorului de SDA o sa avem nevoie de un tool suplimentar care automatizeaza procesul de compilare a aplicatiilor (cu ajutorul makefile-urilor),​ **GNU Make**.
 <note important>​sudo apt-get install make</​note>​ <note important>​sudo apt-get install make</​note>​
-<​note>​Pentru a compila un program in C folosim **gcc**, iar pentru a compila un program in C++ folosim **g++**.</​note>​+<​note>​Pentru a compila un program in C folosim **gcc**.</​note>​
 === Exemplu de utilizare === === Exemplu de utilizare ===
-Presupunem ca avem programul ,,​poo.cpp"​ care contine + 
-<code c+++<code c sda.c
-#include <iostream> +#include <stdio.h>
-using namespace std;+
 int main () { int main () {
 for (int i = 0; i < 3; i++) for (int i = 0; i < 3; i++)
-    cout << "Hello world of OOP!" << endl;+    cout << "Hello world of SDA!" << endl;
 return 0; return 0;
 } }
Line 124: Line 123:
 == Etapa de compilare == == Etapa de compilare ==
 <code bash> <code bash>
-poo@is:/​laborator ​g++ poo.cpp +SDA-AB@is:/​laborator ​gcc sda.c 
-poo@is:/​laborator ls +SDA-AB@is:/​laborator ls 
-poo.cpp a.out+sda.a.out
 </​code>​ </​code>​
 Observam ca in urma compilarii am obtinut executabilul **a.out** deoarece nu i-am impus un nume, iar compilatorul i-a atribuit unul by default. Pentru a denumi sugestiv executabilul o sa folosim extensia **-o**. Observam ca in urma compilarii am obtinut executabilul **a.out** deoarece nu i-am impus un nume, iar compilatorul i-a atribuit unul by default. Pentru a denumi sugestiv executabilul o sa folosim extensia **-o**.
 <code bash> <code bash>
-poo@is:/​laborator ​g++ poo.cpp -o main +SDA-AB@is:/​laborator ​gcc sda.-o main 
-poo@is:/​laborator ls +SDA-AB@is:/​laborator ls 
-poo.cpp main+sda.main
 </​code>​ </​code>​
 == Rularea executabilului == == Rularea executabilului ==
 <code bash> <code bash>
-poo@is:/​laborator ​g++ poo.cpp -o main +SDA-AB@is:/​laborator ​gcc sda.-o main 
-poo@is:/​laborator ls +SDA-AB@is:/​laborator ls 
-poo.cpp main +sda.main 
-poo@is:/​laborator ./main +SDA-AB@is:/​laborator ./main 
-Hello world of OOP+Hello world of SDA
-Hello world of OOP+Hello world of SDA
-Hello world of OOP+Hello world of SDA
-poo@is:/​laborator+SDA-AB@is:/​laborator
 </​code>​ </​code>​
 <note important>​Daca avem de compilat mai multe programe, procedam astfel: <note important>​Daca avem de compilat mai multe programe, procedam astfel:
  
-//g++ program1.cpp program2.cpp program3.cpp program4.cpp -o main//+**gcc program1.program2.program3.program4.-o main**
  
 In cazul in care lucram cu fisiere de input/​output,​ acestea trebuie introduse ca argumente in linia de comanda delimitate de cate un spatiu. ​ In cazul in care lucram cu fisiere de input/​output,​ acestea trebuie introduse ca argumente in linia de comanda delimitate de cate un spatiu. ​
  
-//./main [nume_fisier1] [nume_fisier2] [nume_fisier3]//</​note>​+**./main [nume_fisier1] [nume_fisier2] [nume_fisier3]**</​note>​
  
sda-ab/ghidlinux.1608806683.txt.gz · Last modified: 2020/12/24 12:44 by ruben_gilian.udroiu
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