This is an old revision of the document!
Specifica Progetto Appelli Febbraio 2020
Descrizione
L'obiettivo del progetto è quello di sviluppare l'applicazione find
che consente di individuare il numero di occorrenze di un insieme di stringhe all'interno di un gruppo di file. Per determinare il numero di occorrenze (e la loro posizione) si consiglia di utilizzare l'Algoritmo di Knuth-Morris e Pratt. Ad ogni esecuzione l'applicazione produrrà in output la lista dei file analizzati con le occorrenze della stringa nel testo insieme alle informazioni riguardante la posizioni della stesse. Le stesse informazioni prodotte in output potranno essere salvate su di un file esterno.
Report
Per ogni parola ricercata, il report conterrà le seguenti informazioni:
WORD <word1>\r\n TOTAL <total_occurrences_word1>\r\n FILE <absoluthepath_file1>\r\n OCCURRENCES <total_occurrences_file1>\r\n <line1> <char1>\r\n ... <linen> <charn>\r\n ... FILE <absoluthepath_filek>\r\n OCCURRENCES <total_occurrences_filek>\r\n <line1> <char1>\r\n ... <linem> <charm>\r\n
Il file terminerà con una riga vuota (\r\n
).
Le parole vengono elencate nel report in ordine alfabetico mentre per ogni parola i file vengono presentati in ordine decrescente per occorrenza.
Se ad esempio consideriamo i file messi a disposizione al seguente link, collocati nella directory /home/loreti/Documents
, il risultato della ricerca delle parole aria
, una
e genio
, il risultato sarà:
WORD aria\r\n TOTAL 2\r\n FILE /home/loreti/Documents/marzo1821.txt\r\n OCCURRENCES 2\r\n 69 2\r\n 71 2\r\n FILE /home/loreti/Documents/5maggio.txt\r\n OCCURRENCES 0\r\n WORD genio\r\n TOTAL 2\r\n FILE /home/loreti/Documents/5maggio.txt\r\n OCCURRENCES 1\r\n 16 13\r\n FILE /home/loreti/Documents/marzo1821.txt\r\n OCCURRENCES 0\r\n WORD una\r\n TOTAL 2\r\n FILE /home/loreti/Documents/marzo1821.txt\r\n OCCURRENCES 4\r\n 28 15\r\n 32 1\r\n 34 1\r\n 49 4\r\n FILE /home/loreti/Documents/5maggio.txt\r\n OCCURRENCES 1\r\n 10 14\r\n \r\n
Addendum per 12 CFU
Gli studenti che devono sostenere il programma di Sistemi Operativi con 12CFU devono contattare il docente per ottenere le specifiche adattate.