Petits exercicis d'Scripts amb Bash
Ja hi ha les solucions
Nota: per buscar amb el find i varis noms de fitxer: find . \( -iname "*.c" -or -iname "*.h" \) -exec echo {} \;
Nota2: documentació del mòdul 4
Nota3: miniguia de vim
1.- El numera-línies
Demanar un fitxer a l'usuari, demanar a quin número vol
començar a comptar línies; i quan s'incrementa el valor
cada cop.
Per exemple, si diu que es comenci amb el número 5 i de 2 en 2
fariem:
5 línia 1
7 línia 2
9 línia 3
Treure-ho per la sortida estàndard.
solució
2.- Cap-i-cua
Demanar dues frases i dir si són cap-i-cua o no.
solució
3.- És primer?
Demanar un número i dir si és primer
solució
4.- Comptar línies, versió 1
Donat un directori, dir el número de total de línies que
tenen tots els fitxers de texte (.txt)
solució
5.- Comptar línies, versió 2
Donat un directori, dir el número total de línies amb
fitxers .c o .h del directori mateix i els seus subdirectoris (i el
d'aquests, etc.)
solució
6.- Calculadora
Li diem a l'script un fitxer, el qual conté una columna de
números, fer la suma total de la columna
solució
7.- Calculadora 2
Ara el fitxer contindrà dos columnes de números. De la
primera en fem la suma i de la segona la multiplicació.
solució
8.- Amics
Suposarem que l'script s'executa al entrar al sistema.
L'script tindrà una variable que serà els amics que un
té. Per exemple: AMICS="is08139 pepe carles"
Amb un finger, ens llistarà quins amics estan connectats a la
màquina i els enviarà un email per dir-los que estem
connectats.
Nota: podem enviar un email
fent: echo "cos del missatge" | mail -s "subject" email@desti
solució
9.- Monitorejar una Web
Mitjançant wget o lynx (no vistos a classe) cada X segons
comprovarem si una direcció web que ens hauran passat per la
línia de comandes ha canviat o no. Si ha canviat, ho direm per
pantalla.
Per saber si dos fitxers són diferents, podem usar cmp.
solució
10- Monitjorejar un programa
Cada X segons comprovarem si hi ha un programa amb determinat nom
executant-se. Si no s'executa, ho direm per pantalla.
Carles Pina i Estany
carles arroba pinux.info
http://pinux.info