Bash Pagina 73

De la Wiki Linux Advanced
Versiunea din 27 octombrie 2024 14:10, autor: Admin (discuție | contribuții) (Pagină nouă: ==Exercițiul 2== <code> #!/bin/bash # Funcție pentru afișarea modului de utilizare usage() { echo "Usage: $0 [-r] [-b n1] [-s n2] stop" echo " -r Afișează numerele în ordine inversă (descrescătoare)" echo " -b n1 Setează valoarea de început n1" echo " -s n2 Setează valoarea de sfârșit n2" echo " -h Afișează acest mesaj de ajutor" exit 1 } # Valori implicite reverse=false start=1 stop=10 # Parsarea opțiunilor while getopts...)
(dif) ← Versiunea anterioară | Versiunea curentă (dif) | Versiunea următoare → (dif)
Sari la navigare Sari la căutare

Exercițiul 2

  1. !/bin/bash
  1. Funcție pentru afișarea modului de utilizare

usage() {

 echo "Usage: $0 [-r] [-b n1] [-s n2] stop"
 echo "  -r       Afișează numerele în ordine inversă (descrescătoare)"
 echo "  -b n1    Setează valoarea de început n1"
 echo "  -s n2    Setează valoarea de sfârșit n2"
 echo "  -h       Afișează acest mesaj de ajutor"
 exit 1

}

  1. Valori implicite

reverse=false start=1 stop=10

  1. Parsarea opțiunilor

while getopts ":rb:s:h" opt; do

 case ${opt} in
   r)
     reverse=true
     ;;
   b)
     start=$OPTARG
     ;;
   s)
     stop=$OPTARG
     ;;
   h)
     usage
     ;;
   \?)
     echo "Invalid option: -$OPTARG" >&2
     usage
     ;;
   :)
     echo "Option -$OPTARG requires an argument." >&2
     usage
     ;;
 esac

done shift $((OPTIND -1))

  1. Verificare argument "stop"

if $1 != "stop" ; then

 echo "Lipseste argumentul 'stop'"
 usage

fi

  1. Afișare numere în funcție de ordine

if $reverse; then

 for ((i = stop; i >= start; i--)); do
   echo "$i"
 done

else

 for ((i = start; i <= stop; i++)); do
   echo "$i"
 done

fi

Pagina anterioară | Următoarea pagină