- Esercizio 1
Si realizzi lo script bash quode che accetta come parametri di
ingresso un tag, un valore intero N
e una stringa word e restituisce in uscita la
codifica della stringa mediante giustapposizione, carattere per
carattere della stringa stessa con una parola random
di lunghezza N, generata automaticamente dal sistema. Pertanto,
la sintassi generale del comando è la seguente
quode
[ -l |
-u |
-d ]
[N] word
|
dove le lettere l, u e d indicano che la parola
random è ottenuta dalle lettere minuscole, maiuscole
e cifre decimali rispettivamente. Si implementi il comando in
modo che, in mancanza del primo e/o secondo parametro vengano
utilizzati i valori di default l e 5.
La stringa di uscita deve avere lunghezza doppia della stringa iniziale
e i suoi caratteri in posizione dispari sono gli stessi della stringa
iniziale mentre quelli in posizione pari derivano dalla parola random,
eventualmente ripetuta, se necessario.
- Esercizio 2
Si realizzi il programma C sedit che accetta come parametri di
ingresso un file di testo, un intero e due stringhe per restituire in
uscita il file di testo ottenuto sostituendo le occorrenze della prima
stringa con la seconda stringa un numero di volte non superiore al
valore intero passato come secondo parametro. Se tale parametro viene
omesso allora la sostituzione deve avvenire per tutte le occorrenze
trovate. Si tratta, pertanto, di realizzare in C il comando di shell
sedit textfile [N]
pattern1 pattern2
dove textfile è il file di testo su cui operare la sostituzione
del pattern pattern1 con il pattern pattern2 un numero di
volte non superiore a N. Si tenga presente che il terminatore di
riga nei sistemi UNIX è il newline.
- Esercizio 3
Si realizzi lo script bash vls che accetta come parametri
di ingresso una directory e una lista
opzionale di file e/o directory f1,
..., fn ivi contenuti, e restituisce
in uscita la stessa lista con l'informazione supplementare della
dimensione di ciascun file/directory seguita da una barra di
asterischi proporzionale alla percentuale dello spazio usato nella
directory passata come primo parametro. Pertanto, la sintassi generale
del comando è la seguente
Si implementi il comando in modo che, in mancanza della lista opzionale
di file, venga prodotta in uscita la stessa informazione, occupazione
di spazio disco e relativa barra grafica, per ogni file contenuto nella
directory passata come unico parametro.