Advertisement
simov

OS (UNIX) Exam June 2018

Jun 20th, 2018
582
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.37 KB | None | 0 0
  1. (20 поени) UNIX командна процедура
  2. (20 поени) Да се напише командна процедура која ќе ги најде сите студенти кои се логирале од лабораториите на ФИНКИ во периодот од X до Y часот на 20.06.2018. X и Y се цели броеви кои означуваат час и се даваат како прв и втор аргумент на скриптата. Во именикот destination даден како трет аргумент на скриптата, да се креираат именици zadA-tB (каде A={3,4} и B={1,2}) и во нив да се ископираат датотеките со исто име како и соодветниот именик од сите логирани студенти. Датотеките се од формат zadA-tB.sh (каде A и B се цифри). При копирање на датотеките во дестинациски именик треба соодветно да се преименуваат, така што пред името на датотеката ќе се додаде индексот на студентот (пр. /home/112233/zad4-t2.sh се копира во /home/user/destination/zad4-t2/112233-zad4-t2.sh).
  3.  
  4. Внимавајте, во домашниот именик на еден студент можно е да има подименици и подименици на подимениците, итн. Ваша задача е да ги пронајдете рекурзивно сите барани датотеки и да ги ископирате. Доколку се случи две датотеки да имаат исто име, тогаш се споредува нивната содржина. Доколку се исти се копира само едната, доколку се различни се остава во дестинацискиот именик онаа која е поголема. На крај во дестинацискиот именик треба да имате само по една копија од датотеките во бараниот формат на соодветниот студент.
  5.  
  6. На почеток на скриптата направете проверка за тоа дали се проследени сите аргументи. Доколку не се, прикажете соодветно упатство за употреба и излезете неуспешно. Да се внимава, доколку дестинацискиот именик не постои, да се креира нов, а ако постоел истиот да се избрише.
  7.  
  8. Командната процедура треба да се зачува како zad4-t2.sh.
  9.  
  10. Помош: Форматот на IP адресите на лабораториите од ФИНКИ е 10.10.X.Y
  11.  
  12. Пример:
  13.  
  14. ./zad4-t2.sh 11 15 /home/user/destination/
  15.  
  16. Излез:
  17.  
  18. /home/user/destination/
  19. zad3-t1:
  20. 112233-zad3-t1.sh
  21. 111111-zad3-t1.sh
  22. 222222-zad3-t1.sh
  23. 333333-zad3-t1.sh
  24. 111222-zad3-t1.sh
  25.  
  26. zad3-t2:
  27. 222111-zad3-t2.sh
  28. 555555-zad3-t2.sh
  29. 222555-zad3-t2.sh
  30.  
  31. zad4-t1:
  32. 111111-zad4-t1.sh
  33. 222222-zad4-t1.sh
  34. 333333-zad4-t1.sh
  35.  
  36. zad4-t2:
  37. 555555-zad4-t2.sh
  38.  
  39. java io .
  40. Потребно е да направите апликација која пребарува Microsoft Office датотеки кои имаат read-write привилегии. За таа потреба имплементирајте метод findRW(String in, String out) кој ќе го изминува рекурзивно директориумот претставен преку “in”. Доколку наиде на .docx или .xlsx кои имаат read-write привилегии, тогаш треба да ги ископира во “out”\brisenje, а доколку наиде на .xlsx или .docx кои имаат само read или само write привилегија, тогаш треба да додаде линија во “out”\rw.txt од типот “Nema read-write datotekata filename, tuku ima privilegii”. На местото filename ставете го името на датотеката и на местото на privilegii ставете ги привилегиите на датотеката во формат rwx или цртичка ако ја нема соодветната привилегија (како во Unix). Внимавајте дека може да има многу вакви документи во “in”.
  41.  
  42. (20 поени) UNIX команди
  43. (20 поени) Со користење на концептите на цевки, редирекција и / или командите за филтрирање на текст, напишете кратка командна процедура во UNIX која ќе направи преименување на сите датотеки од тековниот именик кои се зачувани со различни варијации на екстензијата .java во правилни датотеки чија екстензија ќе биде точно .java. (Пример: zad1.JaVa -> zad1.java, zad2.JAVA -> zad2.java, итн.)
  44.  
  45. Кратката командна процедура да се зачува под името zad3-t2.sh.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement