[Bash] Tabliczka mnożenia

Marcepan99
Użytkownik
Użytkownik
Posty: 21
Rejestracja: 7 paź 2012, o 23:19
Płeć: Mężczyzna
Lokalizacja: Kraków
Podziękował: 5 razy

[Bash] Tabliczka mnożenia

Post autor: Marcepan99 »

Mam taki oto skrypt w bash-u:

Kod: Zaznacz cały

   #!/bin/bash
   #tabliczka mnozenia
   wiersz ()
   {
   for ((i=1; i<=$2; i++))
   do
   echo -n -e "$(( $i*$1 )) 	"
   done
   }
  
  
  echo -n "Podaj rozmiar tabliczki"
  read zakres
  echo
  for ((w=1; w <=$zakres; w++))
  do
  wiersz $w $zakres
  echo
  done
Jakoś nie mogę ogarnąć tego, bo nie wiem gdzie np jest zdefiniowane $2, które pojawia się w 5 wierszu, albo $zakres. Skąd te zmienne i czy mam je tu w tym programie gdzieś zdefiniowane? Albo wiersz 7, czym są te kody w nawiasach?
Ostatnio zmieniony 26 lis 2012, o 20:46 przez Afish, łącznie zmieniany 2 razy.
Powód: Kod lepiej wygląda w otoczeniu [code] oraz [icode]. Poprawa wiadomości.
abc666

[Bash] Tabliczka mnożenia

Post autor: abc666 »

$2 to drugi argument wywołania skryptu lub procedury. Wywołanie procedury masz w linii 17, pierwszy argument to $w a drugi to $zakres. Zmienna zakres jest wczytywana ze standardowego wejścia w linii 13.
Co do linii 7, konstrukcja $(( wyrażenie )) jest jednym ze sposobów na wykonanie działań matematycznych.

Program jest napisany dość specyficznie, ale podejrzewam, że jego celem było ukazanie różnych aspektów pisania skryptów.
ODPOWIEDZ