Strumenti Utente

Strumenti Sito


informatica:sol:laboratorio11:esercitazioni:esercitazione5

Questa è una vecchia versione del documento!


Esercitazione 4 bis

Ancora su scripting e bash.

Esercizio 1: mygzip

mygzip e' uno script bash che prende come parametro una directory ed una lista di file

bash:~$ mygzip dir file1 ... filek

applica il comando gzip a tutti i file file1 … filek presenti nella directory dir

Esercizio 2: dirdiff

Realizzare lo script dirdiff prende tre parametri

bash:~$ dirdiff dir1 dir2 dir3

ed effettua la ``differenza fra la directory dir1 e la directory dir2 scrivendo i lrisultato in dir3. In pratica copia in dir3 ogni file di dir1 che NON e' presente in dir2 con lo stesso nome. ===== Esercizio 3: modify ===== Realizzare uno script Bash che realizza un comando di sintassi: <code> modify [dir] suffix </code> che cambia il nome di tutti i file in dir aggiungendo un suffisso .suffix. Se dir non e' specificata ridenomina i file nella directory corrente. Infine, modify stampa tutti i file modificati lasciando fra uno e l'altro una riga vuota <code> file1.suffix file2.suffix …. </code> ===== Esercizio 4: selectfile ===== Realizzare uno script Bash che selezioni tutti i file con un certo suffisso nella directory corrente, contro lli fra questi quali hanno diritto di esecuzione settato per l'owner e presenti un menu in cui si richiede quale di questi file deve essere eseguito. Ad esempio: <code> bash:~$ ls primo.test primo.check zz.test zz.check bash:~$ selectfile test 1) primo.test 2) zz.test Scelta? </code> ===== Esercizio 5: count ===== Realizzare uno script count che legge da standard input dei record relativi ad esami registrati, ciascun record ha formato <code> matricola_studente:codice_esame:voto\n </code> lo script conta per ogni codice quanti sono gli studenti che hanno superato quell'esame e al termine dell'input (EOF) stampa sullo standard output una serie di righe <code> codice_esame n_studenti </code> Suggerimento: utilizzare read'' per leggere da standard input e gli array bash per memorizzare i vari contatori.

informatica/sol/laboratorio11/esercitazioni/esercitazione5.1301493451.txt.gz · Ultima modifica: 30/03/2011 alle 13:57 (14 anni fa) da Susanna Pelagatti

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki