Está en la página 1de 1

COTIRLEA ANAMARIA - GRUPA 214 56.

a) Sa se scrie un script shell care primind 3 parametri, (extensie1, extensie2, cuvant) va redenumi toate fisierele cu extensia extensie1 din directorul curent si din toate subdirectoarele acestuia, dandu-le extensia extensie2 si va numara de cate ori apare cuvant in fiecare fisier. #!/bin/bash for file in `find . -type f -name "*.$1"` do oldpath=`readlink -f $file` newpath="${oldpath/$1/$2}" mv $oldpath $newpath awk '{ for (i=1;i<=NF;i++) if ( $i == $3 ) c++ } END{print c}' $newpath done 56. b) Sa se afiseze, pentru fiecare fisier luat ca si parametru din linia de comanda, numarul de cuvinte care au lungimea mai mare decat un numar k, citit de la tastatura. Afisarea se va face decsrescator dupa numarul de cuvinte.

#!/bin/bash echo "Dati un numar K: " read k while [ $# -ge 1 ] do awk -v K=${k} '{ for (i=1;i<=NF;i++) if( length($i) > K ) count++ } END{print count}' $1 shift 1 done

También podría gustarte