clear - czyści ekran terminalaread - wczytuje dane ze standardowego wejścia oraz umieszcza je w zmiennej
sleep - pauzuje przez pewien czas
#!/bin/bash
#instrukcje do wykonania
exit 0
./nazwanazwa
musi mieć rozszerzenie: *.sh./nazwa
argument1 argument2 ...
argumentN$zmienna.$0 - polecenie uruchomienia skryptu$1 - pierwszy argument
(argument1)$2 - drugi argument
(argument2)$3 - trzeci argument
(argument3)$N - n-ty argument$* - wszystkie argumenty$# - liczba argumentówwyrażenie1 && wyrażenie2
- spełniony jeżeli wyrażenie po prawej oraz po lewej jest spełnione
(dwa wyrażenia muszą być spełnione)wyrażenie1 || wyrażenie2
- spełniony jeżeli wyrażenie po prawej lub po lewej jest spełnione
(przynajmniej jedno wyrażenie musi być spełnione)! wyrażenie
- neguje wartość wyrażeniawartość1 -eq wartość2
- spełniony, jeżeli obie wartości są takie samewartość1 -ne wartość2
- spełniony, jeżeli obie wartości są różnewartość1 -lt wartość2
- spełniony jeżeli wartość po lewej stronie jest mniejsza niż wartość
po prawej stroniewartość1 -le wartość2
- spełniony jeżeli wartość po lewej stronie jest mniejsza lub równa
wartości po prawej stroniewartość1 -gt wartość2
- spełniony jeżeli wartość po lewej stronie jest większa niż wartość
po prawej stroniewartość1 -ge wartość2
- spełniony jeżeli wartość po lewej stronie jest większa lub równa
wartości po prawej stroniewartość1 = wartość2
- spełniony, jeżeli obie wartości są takie samewartość1 != wartość2
- spełniony, jeżeli obie wartości są różnewartość1 < wartość2
- spełniony, jeżeli pierwszy napis jest prędzej leksykograficzniewartość1 > wartość2
- spełniony, jeżeli pierwszy napis jest później leksykograficznie-z wartość
- spełniony jeżeli wartość na długość równą 0-n wartość
- spełniony jeżeli wartość na długość różną od 0-e wartość
- spełniony, jeżeli ścieżka istnieje-f wartość
- spełniony, jeżeli wartość jest plikiem i istnieje-d wartość
- spełniony, jeżeli wartość jest katalogiem i istnieje-r wartość
spełniony jeżeli plik/katalog można odczytać-w wartość
spełniony jeżeli plik/katalog można zapisać-x wartość
spełniony jeżeli plik/katalog można wykonywaćwartość1 -nt wartość2
- spełniony jeżeli wartość po lewej stronie jest nowsza od
wartości po prawej stroniewartość1 -ot wartość2
- spełniony jeżeli wartość po lewej stronie jest starsza od
wartości po prawej stronie
if [[ warunek1 ]]
then
# instrukcje wykonywane, jeżeli warunek1 jest spełniony
elif [[ warunek2 ]]
then
# instrukcje wykonywane, jeżeli poprzedni warunek nie został spełniony
natomiast warunek2 jest spełniony
# ...
else
# instrukcje wykonywane, jeżeli żadne z wcześniejszych wyrażeń nie został spełniony
fi
case wyrażenie in
wartość1)
# instrukcje wykonywane, jeżeli wyrażenie -eq wartość1
;;
wartość2)
# instrukcje wykonywane, jeżeli wyrażenie -eq wartość2
;;
# ...
*)
# instrukcje wykonywane, jeżeli żaden z wcześniejszych warunków nie został spełniony
;;
esac
while [[ warunek ]]
do
# instrukcje do wykonania w pętli, jeżeli
warunek jest spełniony
done
for (( wyrażenie1;
wyrażenie2;
wyrażenie3 ))
do
# instrukcje do wykonania w pętli
done
wyrażenie1
- instrukcja wykonywana przed pierwszym przebiegiem pętli,
przeważnie jest to inicjalizacja zmiennej, która będzie służyła jako "licznik" przebiegów pętliwyrażenie2
- warunek zakończenia pętliwyrażenie3
- instrukcja wykonywana po każdym przejściu pętli (także ostatnim),
przeważnie jest to instrukcja, zwiększająca "licznik" o odpowiednią wartość
for zmienna in
sekwencja
do
# instrukcje do wykonania w pętli dla każdego argumentu
done
kompiluj_i_uruchom.sh, który:
program.c przy użyciu gcc;Dodatkowo: możesz dodać własne rozszerzenia, np. logowanie wyjścia do pliku wynik.log lub specjalne kody błędów.