Sunteți pe pagina 1din 4

Temele se vor preda catre seful/a de grupa pana la data de 29 mai 2018 ora 19:00.

Shell scriptul se livreaza sub forma unui document text (.txt) a carui denumire este de forma:
nrtema_ nume_prenume_grupa.txt.
Aceste teme valoreaza 1 punct (care se adauga la nota de la examen) si pot constitui subiect la
examen.
Seful/a de grupa livreaza documentele pana la data de 29 mai 2018 ora 20:00.
Nu se admit intarzieri. Intarzierea (datorata oricarui factor) duce automat la desconsiderarea
ulterioara a temei (nu se acorda punctajul).

1. Un shell script care să deseneze arborele de procese active.


2. Un shell script care să deseneze arborele de procese lansate în background.
3. Un shell script care să afișează procesele lansate în background la o anumită dată. Data este
parametru pozițional.
4. Un shell script care să afișează procesele lansate în background de către un anumit utilizator.
Numele utilizatorului este parametru pozițional.
5. Un shell script care să deseneze arborele de procese lansate în foreground.
6. Un shell script care să afișează procesele lansate în foreground la o anumită dată. Data este
parametru pozițional.
7. Un shell script care să afișează procesele lansate în foreground de către un anumit utilizator.
Numele utilizatorului este argument în linia de comandă.
8. Un shell script care să deseneze un arbore al utilizatorilor activi și terminalele asociate.
9. Un shell script care să deseneze un arbore al utilizatorilor (în ordinea creării lor).
10. Un shell script care oprește execuția unui proces și a tuturor proceselor fii ale acestuia. PID-ul
procesului părinte e argument în linia de comandă.
11. Să se scrie un shell script care la lansarea unui anumit proces în background transmite tuturor
utilizatorilor un email prin care sunt atenționați că în următoarele 5 minute toate procesele
lansate de ei vor fi oprite. După 5 min se opresc.
12. Să se scrie un shell script care transmite un memo prin email către toți angajații când se lansează
un anumit proces.
13. Un shell script care identifică un șablon furnizat ca argument în linia de comandă. Căutarea se
realizează și în arhive. Pentru arhive listarea este separată.
14. Un shell script care identifică toate fișierele sursă c modificate de un anumit utilizator înainte cu
x zile. Calea de căutare numele utilizatorului și x sunt parametri poziționali.
15. Un shell script care identifică toate fișierele sursă c modificate de un anumit utilizator la o
anumită dată. Calea de căutare, numele utilizatorului și data sunt parametri poziționali.
16. Să se scrie un shell script care să afișeze toate fișierele a căror dimensiune a crescut cu mai mult
de x blocuri în ultimele y zile. X, Y și calea curentă sunt parametri poziționali.
17. Să se scrie un shell script care identifică fișierele sursă C modificate de un utilizator în ultimele x
zile și le transformă în fișiere read only. Calea curentă numele de utilizator și x sunt parametri
poziționali.
18. Să se scrie un shell script care identifică fișierele sursă C modificate de un utilizator la o anumită
dată și le transformă în fișiere read only. Calea curentă numele de utilizator și data sunt
parametri poziționali.
19. Să se scrie un shell script care listează un raport de acivitate zilnic pentru un angajat ce conține:
data, numărul de fișiere modificate, numele acestora și modificările realizate față de starea
inițială (starea inițială este considerată a fi forma fișierului la începutul zilei de lucru (ora 8:00).
20. Să se scrie un shell script care afișează câte linii de cod a modificat un programator (utilizator)
într-un proiect de la începutul zilei de lucru (ora 8:00). Proiectul este partajat de mai mulți
utilizatori.
21. Să se scrie un shell script care arhivează toate fișierele create de un utilizator pe parcursul zilei
curente de la o anumită cale și apoi le șterge cu confirmare. Numele de utilizator, calea curentă
sunt parametri poziționali.
22. Să se scrie un shell script care criptează toate fișierele editate de un utilizator. Fișierele sunt
proiecte care nu sunt partajate cu alți utilizatori.
23. Să se scrie un shell script care copiază la o cale separată doar fișierele în care un anumit
utilizator a modificat mai mult de 20 de linii la data curentă. Fișierele se arhivează și apoi se
șterg. Numele de utilizator este parametru pozițional.
24. Să se scrie un shell script care copiază la o cale separată doar fișierele în care un anumit
utilizator a modificat mai mult de 20 de linii la o anumită dată. Fișierele se arhivează și apoi se
șterg. Numele de utilizator și data sunt parametri poziționali.
25. Să se scrie un shell script care la sfârșitul programului de lucru (ora 17:00) tipărește o listă a
fișierelor actualizate de un anumit utilizator la data curentă. Sfârșitul programului de lucru și
numele utilizatorului sunt parametri poziționali.
26. Să se scrie un shell script care afișează un raport cu numele utilizatorului, numărul de fișiere
actualizate la data curentă, numărul de linii modificate de utilizator per fișier. La sfârșit de afișaj
se calculează o medie per utilizator (câte linii per fișier).
27. Să se realizeze un shell script care compilează ultimele x surse C actualizate de un utilizator.
Numele utilizatorului și x sunt furnizate ca parametri poziționali.
28. Să se scrie un shell script care numără liniile goale de conținut dintr-un fișier creat de un anumit
utilizator. Denumirea fișierului și numele utilizatorului sunt furnizate ca parametru pozițional.
29. Să se scrie un shell script care afișează legăturile accesate de un anumit utilizator în ziua
anterioară.Numele utilizatorului este furnizat ca parametru pozițional.
30. Să se scrie un shell script care verifică dacă o anumită comandă este instalată și dacă nu afișează
un mesaj de atenționare. Numele comenzii se furnizează ca parametru pozițional.
31. Să se scrie un shell script care afișează dimensiunea fișierelor în Gb. Calea curentă este furnizată
ca parametru pozițional.
32. Să se scrie un shell script care șterge (cu confirmare) toate task-urile planificate de un anumit
utilizator. Numele utilizatorului se furnizează în linia de comandă.
33. Să se scrie un shell script care șterge (cu confirmare) toate task-urile planificate înainte de ora
17. Numele utilizatorului se furnizează ca parametru pozițional.
34. Să se scrie un shell script care reprogramează toate task-urile planificate de un anumit utilizator
înainte de ora 17, după ora 17. Numele utilizatorului se furnizează ca parametru pozițional.
35. Să se scrie un shell script care oprește execuția tuturor proceselor care au un anumit PPID. PPID
se furnizează ca parametru pozițional.
36. Să se scrie un shell script care oprește execuția tuturor proceselor aflate în starea Waiting.
37. Să se scrie un shell script care oprește execuția tuturor proceselor aflate în starea Suspended.
38. Să se scrie un shell script care oprește execuția tuturor proceselor care au un anumit UID. UID se
furnizează ca parametru pozițional.
39. Să se scrie un shell script care verifică dacă un nume de utilizator furnizat ca parametru
pozițional are drepturi de administrare.
40. Să se scrie un shell script care afișează utilizatorii conectați și procesele lansate de aceștia în
background.
41. Să se scrie un shell script care verifică dacă la calea solicitată există un anumit număr de fișiere
de dimensiune 0. Calea și numărul sunt furnizate ca parametri poziționali.
42. Să se scrie un shell script care arhivează toate fișierele de la calea solicitată mai puțin
subdirectoarele și fișierele pe care le conțin acestea. Calea este furnizată ca parametru
pozițional.
43. Să se scrie un shell script care șterge toate fișierele de dimensiune 0 create de un anumit
utilizator de la o anumita cale. Calea și utilizatorul sunt furnizate ca parametri poziționali.
44. Să se scrie un shell script care afișează în loc de exit status cuvintele execuție fără eroare sau
execuție cu eroare.
45. Să se scrie un shell script care creează câte un fișier editabil pentru fiecare utilizator. Denumirea
fișierului respectă următorul șablon: file_nr_numeutilizator.
46. Să se scrie un shell script care realizează 100 de copii a unui fișier șablon existent pe disc.
Denumirea copiilor va fi de forma file_nr. Numărul se generează utilizând o expresie regulată.
47. Să se scrie un shell script care va rula la start-up și care va avea următoarele funcționalități:
 șterge fișierele temporare ale contului curent
 golește coșul de gunoi
 șterge conținutului directorului Downloads al contului curent
48. Să se scrie un shell script care va rula la start-up și care va șterge fișierele temporare de pe toate
conturile sistemului.
49. Să se scrie un shell script care va rula la start-up și care va șterge conținutul directorului
Downloads de pe toate conturile sistemului.
50. Să se scrie un shell script care afișează conținutul fișierelor cu mai mult de 5 linii editate. Se va
crea o listă ce conține denumirea fișierelor ce respectă criteriul și o listă ce nu respectă criteriul.
Denumirea fișierelor este de forma f_popescu.
51. Să se scrie un shell script care numără de câte ori s-a conectat un anumit utilizator. Numele
utilizatorului este dat ca parametru pozițional.
52. Să se scrie un shell script care numără câte procese a lansat un anumit utilizator. Numele
utilizatorului este furnizat ca parametru poziţional.
53. Să se scrie un shell script care oprește din execuție toate procesele lansate de un anumit
utilizator. Numele utilizatorului este furnizat ca parametru poziţional.
54. Să se scrie un shell script care oprește din execuție toate procesele lansate de un anumit
utilizator în ultimele 10 ore. Numele utilizatorului este furnizat ca parametru poziţional.
55. Să se scrie un shell script care citeşte un nume de utilizator al sistemului de la intrarea standard.
Script-ul va afişa ultimele 3 conectări ale acestuia, iar dacă acesta nu s-a conectat deloc va afişa
mesajul "Utilizatorul ____ nu s-a conectat niciodată".
56. Să se scrie un shell script care afișează conținutul unui fișier de la o linie de start până la o linie
de stop. Linia de start, de stop și numele fișierului sunt parametri poziționali.
57. Să se scrie un shell script care afişează denumirea fişierelor ".sh " executabile care conţin pe
prima linie expresia #!/bin/bash. Directorul de căutare se furnizează ca parametru poziţional.
58. Să se scrie un shell script care verifică dacă pe ultima linie a fişierelor ".sh" se regăseşte cuvântul
exit. Se afişează denumirea tuturor fişierelor care îndeplinesc condiţia. Directorul de căutare se
furnizează ca parametru poziţional.
59. Să se scrie un shell script prin care se copiază primele 3 linii de cod din toate fişierele ".c" din
directorul curent într-un fişier temporar furnizat ca parametru poziţional. Se afișează conținutul
fișierului temporar.
60. Să se scrie un shell script prin care denumirea tuturor fisierelor ".sh " din directorul curent se
modifică prin adăugarea textului "script_" (script_numevechi).
61. Să se scrie un shell script prin care ştergem toate arhivele create în ultima săptămână (pornind
de la data curentă).
62. Să se scrie un shell script prin care se identifică numai fişierele cu drept de execuţie (dintr-un
director furnizat ca parametru poziţional) şi programează execuţia acestora la o anumită dată
respectiv oră în fiecare săptămână.

S-ar putea să vă placă și