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/14 22:03]
bstachura
pl:dydaktyka:sitw:2016:wstep [2019/06/27 15:50] (aktualna)
Linia 86: Linia 86:
 iface eth0 inet dhcp iface eth0 inet dhcp
 </​code>​ </​code>​
 +
 +==== Instalacja w systemie Linux ====
 +
 +Instalacja z repozytoriów:​\\
 +<code bash>
 +apt-get update
 +apt-get install nazwa_pakietu
 +</​code>​
 +
 +Instalacja z pakietu pobranego z sieci:\\
 +Pobranie pakietu:\\
 +<code bash>
 +wget -opcje adres.z.ktorego.popieramy
 +</​code>​
 +Instalacja pobranego już pakietu:\\
 +<code bash>
 +dpkg -i nazwa_pakietu.deb
 +</​code>​
 +==== Tworzenie skryptów bash ====
 +
 +Skrypty powłoki muszą zostać poprzedzone odpowiednią instrukcją odwołującą się do interpretera powłoki. W Państwa przypadku jest to powłoka /​bin/​bash"​
 +
 +<code bash>
 +#!/bin/bash
 +</​code>​
 +
 +Zmienne w powłoce:
 +<code bash>
 +#!/bin/bash
 +zmienna="​SiTW nie restartuj mnie"
 +echo $zmienna
 +</​code>​
 +
 +Zmienna specjalna **$?**
 +
 +<code bash>
 +#!/bin/bash
 +vdir /home/test
 +echo $?
 +</​code>​
 +
 +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.1508011382.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