Skrypty powłoki Linux

Tworzenie skryptu :

  1. W dowolnym edytorze tworzymy plik tekstowy z treścią skryptu,
  2. Nadajemy mu atrybut wykonywalności (chmod +x mojskrypt)
  3. wykonujemy jak program: ./mojskrypt
  4. Dokonujemy edycji skryptu jak każdego innego pliku tekstowego

Przykładowy, bardzo prosty skrypt może się składać z następujących poleceń:

#!/bin/bash 
#Tu jest komentarz.
echo "Hello Worl

Pierwsza linia skryptu zaczynająca się od znaków: #! ma szczególne znaczenie – wskazuje na rodzaj powłoki, w której skrypt ma być wykonany. Tutaj skrypt zawsze będzie wykonywany przez interpreter poleceń/bin/bash, niezależnie od tego, jakiego rodzaju powłoki używamy w danej chwili. Znak # (hasz) oznacza komentarz – wszystko, co znajduje się za nim w tej samej linii, jest pomijane przez interpreter. echo “Hello World” Trzecia linia spowoduje wydrukowanie na standardowym wyjściu (stdout), czyli na ekranie, napisu: „Hello World”.

więcej na: https://rk.edu.pl/

Przykładowe skrypty:

Dzielenie:

!/bin/bash
echo "Podaj a="
read a
echo "Podaj b="
read b
if [ $b -eq 0 ]
then
echo "Bledne b"
else
w=$[$a/$b]
echo $w
fi

Kalkulator:

!/bin/bash
echo "dodawanie czy odejmowanie?"
select x in X Y
do
case $x in
"X")
echo "Podaj a="
read a
echo "POdaj b="
read b
w=$[$a+$b]
echo "Wynik $a+$b=$w"
;;
"Y")
echo "Podaj a="
read a
echo "Podaj b="
read b
w=$[$a-$b]
echo "Wynik $a-$b=$w"
;;
*) echo "nie wybrales nic"
esac
break
done

Największa z 3 liczb

!/bin/bash
echo "Podaj a="
read a
echo "Podaj b="
read b
echo "POdaj c="
read c
if [ $a -gt $b ] && [ $a -gt $c ] ; then
echo "Najwieksza to a=$a"
elif [ $b -gt $c ] ; then
echo "Najwieksza to b=$b"
else
echo "najwieksza to c=$c"
fi

Pętla for:

for x in 1 2 3 4 5 6 7 8 9
do
echo "nr = $x"
done

Lub


#!/bin/sh
for i in `seq 1 10`
do
echo ">> Iteracja nr: $i" done