This is an old revision of the document!
Tema se rezolvă individual. Orice tentativă de copiere va rezulta în 0 puncte pentru tema respectivă. Vom utiliza și sisteme automate de detectare a copierii. Dacă avem dubii, vă vom adresa întrebări suplimentare legate de temă.
Dacă aveți întrebări legate de temă, vă rugăm să scrieți un issue pe repository-ul de github repository cu titlul de forma [busybox] <titlul întrebări voastre>. Aveți nevoie de un cont de github pentru a scrie întrebări.
Dacă doriți să primiți un email când se pun întrebări noi sau cand apar răspunsuri, accesați github repository și faceți click pe Watch.
Scopul acestei teme este implementarea unui utilitar capabil să execute comenzi tip Linux bash.
Pentru rezolvarea temei veți realiza un script Python care primește ca argumente comanda ce se dorește a fi executată, urmată de parametrii acesteia. Scriptul va executa comanda după care își va încheia execuția.
Exemplu:
python busybox.py cp file folder
În continuare, vom defini comenzile suportate de utilitar, împreună cu comportamentul caracteristic și parametrii pe care acestea de suportă. Pentru orice altă comandă sau orice alt format, scriptul va afișa mesajul Invalid command și va returna valoarea 1.
În cazul în care comanda primită de utilitar a fost rulată cu succes, acesta va returna valoarea 0. În caz contrar, acesta va returna valoarea 1.
Comenzile suportate de aplicația mini-busybox sunt:
Exemplu:
$python busybox.py pwd
/home/pi/my_directories