Różnice

Różnice między wybraną wersją a wersją aktualną.

Odnośnik do tego porównania

Both sides previous revision Poprzednia wersja
Nowa wersja
Poprzednia wersja
pl:dydaktyka:sitw:2016:wstep [2017/10/16 12:53]
bstachura [Tworzenie skryptów bash]
pl:dydaktyka:sitw:2016:wstep [2019/06/27 15:50] (aktualna)
Linia 119: Linia 119:
 </​code>​ </​code>​
  
-Zmienna specjalna **$**+Zmienna specjalna **$?**
  
 <code bash> <code bash>
Linia 127: Linia 127:
 </​code>​ </​code>​
  
-W zmiennej tej zapisywana jest informacja czy program ukończył działanie poprawnie+W zmiennej tej zapisywana jest informacja czy program ukończył działanie poprawnie.\\ 
 + 
 +Instrukcja warunkowa **if**:\\ 
 +<code bash> 
 +if wartość 
 +then 
 +zrób coś 
 +else 
 +zrób coś innego 
 +fi 
 +</​code>​ 
 + 
 +Instrukcja **case**:​\\ 
 +<code bash> 
 +#​!/​bin/​bash 
 +wartosc=1 
 +case "​$wartosc"​ in 
 +1) 
 +echo Liczba ma wartosc 1 
 +;; 
 +2) 
 +echo Liczba ma wartosc 2 
 +;; 
 +Esac 
 +</​code>​ 
 +Pętla **for**:​\\ 
 +<code bash> 
 +#​!/​bin/​bash 
 +for warzywa in marchew seler kalafior 
 +do 
 +echo $warzywa 
 +done 
 +</​code>​ 
 +Pętla **while**:​\\ 
 +<code bash> 
 +#​!/​bin/​bash 
 +i=0 
 +while [ $i -lt 2 ] 
 +do 
 +echo $i 
 +i=`expr $i + 1` 
 +done 
 +</​code>​ 
 +Stosowanie **break**:​\\ 
 +<code bash>#​!/​bin/​bash 
 +for warzywo in marchew seler kalafior 
 +do 
 +echo $owoc 
 +if [ "​$warzywo"​ = "​kalafior"​ ] 
 +then 
 +break 
 +fi 
 +done 
 +</​code>​ 
 + 
 +Stosowanie **continue**:​\\ 
 +<code bash> 
 +#​!/​bin/​bash 
 +for warzywo in marchew seler kalafior 
 +do 
 +echo $owoc 
 +if [ "​$warzywo"​ = "​marchew"​ ] 
 +then 
 +continue 
 +fi 
 +echo nastepna linia 
 +done 
 +</​code>​ 
 + 
 +Argumenty przekazywane do skryptu są w następujący sposób:​\\ 
 +<code bash> 
 +[xyz@localhost ~]$ ./skrypt super 
 +</​code>​ 
 + 
 +Do argumentów wysłanych po uruchomieniu skryptu odwołujemy się za pomocą zmiennych **$1, $2.....$n**. 
 + 
 +<code bash> 
 +#​!/​bin/​bash 
 +echo "​Dzisiaj pogoda była $1" 
 +</​code>​ 
 +==== Zadania ==== 
 + 
 +   * Przejdź do katalogu /tmp 
 +   * Stwórz plik /​tmp/​lab1/​lab1.sh 
 +   * Zmień mu prawa dostępu na rwxrwxrwx. 
 +   * Za pomocą echo i przesunięcia bitowego zapisz w nim ciąg znaków: "​pierwsza linia" a następnie w drugiej linii: "druga linia"​ 
 +   * Skopuj go do lokalizacji /​tmp/​lab1/​lab1a.sh 
 +   * Odbierz wszelkie prawa grupie do pliku /​tmp/​lab1/​lab1a.sh 
 +   * Stwórz link symboliczny do pliku /​tmp/​lab1/​lab1.sh w lokalizacji /​tmp/​labek 
 +   * Napisz skrypt rysujący choinkę w konsoli, 
 +   * Napisz skrypt zalogowanych.sh,​ który zwróci liczbę aktualnie zalogowanych użytkowników i wypisze twój login, 
 +   * Napisz skrypt szukaj-tutaj.sh,​ który będzie wyszukiwał pliki o nazwie podanej w parametrze skryptu. Wyszukiwanie ma się odbywać od katalogu w którym aktualnie pracuje użytkownik,​ 
 +   * Napisz skrypt serwer.sh, który przyjmuje tylko trzy parametry: „start” (wyświetla napis: "​Usługa jest uruchamiana"​),​ „stop” (wyświetla napis: "​Usługa jest zatrzymywana"​) i „restart” (wyświetla napis: "​Usługa jest restartowana"​),​ 
 +   * Napisz skrypt pliki-wykonywalne.sh,​ który wyświetli nazwy wszystkich plików z katalogu /bin/, które użytkownik ma prawo uruchamiać,​ 
 +   * Zainstaluj git, 
 +   * Usuń git.
pl/dydaktyka/sitw/2016/wstep.1508151212.txt.gz · ostatnio zmienione: 2019/06/27 15:55 (edycja zewnętrzna)
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0