SHARE
TWEET

Untitled

razvanth21 Dec 3rd, 2019 (edited) 77 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. # Sa se scrie un shell script care primeste in linia de comanda unul sau mai multe nume de cale. Daca nu exista cel putin un argument se afiseaza mesaj de utilizare si se incheie executia
  2. # Pentru fiecare nume de cale care nu este director, se afiseaza cate un mesaj corespunzator si se continua executia.
  3. # Se parcurge nerecursiv fiecare director dat si, pt fiecare fisier obisnuit intalnit se numara liniile cu propozitii. O propozitie incepe cu majuscula si contine doar litere sau caracterul spatiu. Rezultatele se afiseaza sub forma: file: n lines.
  4. # Se afiseaza nr de legaturi simbolice din fiecare director dat, de aceasta data fara a parcurge directorul, sub forma: dir: n links.
  5.  
  6. #! /bin/sh
  7.  
  8. if [ $# -lt 1 ]
  9. then
  10.     echo "Sintaxa: $0 <cale1> <cale2> ..."
  11.     exit -1
  12. fi
  13.  
  14. for i in "$@"
  15. do
  16.     if [ ! -d $i ]
  17.     then
  18.         echo "$i nu este director"
  19.     else
  20.         for e in "$i"/*
  21.         do
  22.             if [ -f $e ]
  23.             then
  24.                 c=0
  25.                 while read line
  26.                 do
  27.                     if [ "$line" =~ '^[A-Z][a-zA-Z ]*' ]
  28.                     then
  29.                         c=$(($c + 1))
  30.                     fi
  31.                 done < $e
  32.                
  33.                 echo "$e: $c lines"
  34.             fi
  35.         done
  36.        
  37.         links=`ls -l | grep '^l[-r]' | wc -l`
  38.         echo "$i: $links links"
  39.     fi
  40. done
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
Not a member of Pastebin yet?
Sign Up, it unlocks many cool features!
 
Top