Advertisement
Guest User

Untitled

a guest
Nov 19th, 2019
305
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 1.54 KB | None | 0 0
  1. Sa se scrie un shell script care primeste in linia de comanda nume de cale. Daca nu exista cel putin un argument, se afiseazsa un mesaj de utilizare si se incheie executia. Pentru fiecare argument care nu este cale de director, se afiseaza cate un mesaj. Se parcurge fiecare director dat in linia de comanda si, pentru fiecare fisier intalnit, se numara cate linii cu propozitii contine. O propozitie incepe cu majuscula si contine doar litere sau caracterul spatiu. Se calculeaza si se afiseaza numarul total de linii cu propozitii, pentru toate directoarele date.
  2. Se calculeaza si se afiseaza numarul de legaturi simbolice din fiecare director dat, de aceasta data fara a parcurge directorul.
  3.  
  4.  
  5. $# reprezinta numarul de argumente
  6.  
  7. if test $# -lt 1
  8. then
  9.  echo "Nu sunt suficiente argumente"
  10.   exit 1
  11. else
  12.  totalLinii=0
  13.         totalLegaturiSimbolice=0
  14.  for i  #aici se parcurg argumentele
  15.  do
  16.  if ! test -d $i
  17.  then
  18.  echo "$i nu este director"
  19.  else
  20.                        
  21.                         legaturiSimbolice= $(find $i -type l | wc -l)
  22.                         echo "Legaturi simbolice $i : $legaturiSimbolice"
  23.                         totalLegaturiSimbolice= `expr $totalLegaturiSimbolice + legaturiSimbolice`
  24.  for file in `find $i`
  25.  do
  26.  if test -f $file
  27.  then
  28.  contor=0
  29.  n=`cat $file | grep -E '^[A-Z][a-zA-Z, ]+$' | wc -l`
  30.  echo "$file numar linii: $n"
  31.  totalLinii=`expr $totalLinii + $n`
  32.  fi
  33.  
  34.  done
  35.  
  36.  fi
  37.  
  38.  done
  39.  echo "Total linii: $totalLinii"
  40.         echo "Total legaturi simbolice: $totalLegaturiSimbolice"
  41.  
  42. fi
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement