Skip to content

Andrei137/Flesh

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

80 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Proiect Shell Sisteme De Operare


  • Numele echipei: Inner Shell
  • Grupa: 252
  • Membrii: Buzatu Giulian, Ilie Dumitru, Neculae Andrei-Fabian

Utilizare

  • Inainte de a rula, trebuie sa ne asiguram ca avem instalate build-essential, cmake si make
sudo apt install build-essential
sudo apt install cmake
sudo apt install make
  • Daca se foloseste scriptul, este necesar sa ii dam drepturi de executie
chmod +x build.sh
  1. Folosind scriptul build.sh (run este optional)
./build.sh [run]
  1. Manual
cmake -B build -S src -DCMAKE_RUNTIME_OUTPUT_DIRECTORY=../bin
cd build
make
cd ../bin
./Flesh

Cerinte

  • Istoric comenzi

    • Limita de cativa MB
    • Pe disk, pentru a se salva chiar daca inchidem shell-ul
    • Salvare pe disk in caz de Ctrl + C
    • Salvare pe disk in caz de kill
    • history
      • Afiseaza tot istoricul, inclusiv comenzile din sesiunile anterioare
    • history -c
      • Sterge tot istoricul
    • history -n
      • Afiseaza numarul de comenzi din istoric
    • history -number
      • Afiseaza ultimele [number] comenzi
    • !!
      • Executa ultima comanda
  • Piping

    • Operatorul |
      • Output-ul primei comenzi este input pentru a doua comanda
      • Utilizare: cat logfile.txt | sort | uniq -c
  • Redirectionare

    • Operatorul >
      • Redirectioneaza output-ul catre o fila txt (overwrite)
      • Utilizare: echo "Hello World!" > output.txt
    • Operatorul >>
      • Redirectioneaza output-ul catre o fila txt (append)
      • Utilizare: echo "Hello World!" >> output.txt
    • Operatorul <
      • Preia input-ul dintr-o fila txt
      • Utilizare: sort < input.txt
  • Operatori Logici

    • Operatorul &&
      • Executa comanda urmatoare doar daca prima comanda a avut succes
      • Utilizare: g++ test.cpp -o test && ./test
    • Operatorul ||
      • Executa comanda urmatoare doar daca prima comanda a avut esec
      • Utilizare: g++ test.cpp -o test || echo "Compilation failed"
  • Control Flow

    • Separatorul ;
      • Permite executia mai multor comenzi secvential
      • Utilizare: sleep 10; echo "Hello World!"
    • Separatorul '&'
      • Permite executia mai multor comenzi in background
      • Utilizare: echo "Hello World 1!" & sleep 10 & echo "Hello World 2!"
  • Sistemul de foldere

    • cd [path]
    • cd -
    • ~
  • Comenzi custom

    • quit
    • clear
    • sudo [comanda custom]
  • Functionalitatea corecta a sagetilor

    • Up, Down -> Istoric comenzi
    • Left, Right -> Navigare prin litere
    • Ctrl + Up, Ctrl + Down -> Navigare prin cuvinte
  • Ctrl Signals

    • Ctrl + C (SIGINT) - Anuleaza executia comanda curenta
    • Ctrl + Z (SIGTSTP) - Suspenda executia comenzii curente
    • Ctrl + \ (SIGQUIT) - Inchide Flesh
    • Ctrl + D - Inchide Flesh
  • Extra

    • Logo
    • Culori (ANSI Escape Sequences)
  • Variabile de mediu

    • $

Resurse

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •