Laboratorium 8 Pętle - Politechnika Lubelska
Transkrypt
Laboratorium 8 Pętle - Politechnika Lubelska
Laboratorium 8 Pętle (na podstawie opracowania dr. inż. Grzegorza Kozieła) Pętla będzie wykonywana dopóki warunek jest prawdą. while [ WARUNEK ]; do INSTRUKCJE done Pętla odwrotna do WHILE, wykonywana dopóki warunek jest fałszem. until [ WARUNEK ]; do INSTRUKCJE done Pętla wykonywana na elementach kolekcji. for ZMIENNA in KOLEKCJA ; do INSTRUKCJE done Klasyczna pętla for. for (( ODKĄD ; DOKĄD ; SKOK)) ; do INSTRUKCJE; done Dostępne operatory http://www.tutorialspoint.com/unix/unix-basic-operators.htm Przykłady zastosowania operatorów matematycznych http://www.tutorialspoint.com/unix/unix-arithmatic-operators.htm a) Wpisz i uruchom poniższy skrypt. Napisz, co wykonują poszczególne instrukcje pętli. #!/bin/bash zm=0; while [ 1 ]; do echo "${zm} Mandarynka!"; zm=$(($zm+1)); done © Kamil Żyła, Grzegorz Kozieł, Instytut Informatyki, Politechnika Lubelska 1 b) Wpisz i uruchom poniższy skrypt. Napisz, co wykonują poszczególne instrukcje pętli. #!/bin/bash zmienna=10 while [ $zmienna -gt 5 ]; do echo "$zmienna" zmienna=$(($zmienna - 1)) done c) Wpisz i uruchom poniższy skrypt. Napisz, co wykonują poszczególne instrukcje pętli. #!/bin/bash x=10 until [ $x -lt 5 ]; do echo "$x" x=$(($x - 1)) done d) Wpisz i uruchom poniższy skrypt. Napisz, co wykonują poszczególne instrukcje pętli. #!/bin/bash mkdir roboczy z=1; while [ $z –le 7 ]; do touch ./roboczy/plik${z} let z=$z+1 done for nazwa in ./roboczy/* ; do echo $nazwa done e) Wpisz i uruchom poniższy skrypt. Napisz, co wykonują poszczególne instrukcje pętli. #!/bin/bash for (( i=0 ; $i<=20 ; i++ )) ; do echo $i; done f) Wpisz i uruchom poniższy skrypt. Napisz, co wykonują poszczególne instrukcje pętli. #!/bin/bash for x in $@; do echo $x done © Kamil Żyła, Grzegorz Kozieł, Instytut Informatyki, Politechnika Lubelska 2 1. Skrypty do samodzielnego napisania © Kamil Żyła, Grzegorz Kozieł, Instytut Informatyki, Politechnika Lubelska 3