Aysad Kozanoglu - Mimarist

Server Howtos & Tutorials

bash programmierung Grundeinstieg Beispiele

12 Oktober, 2016 | Scripts Codes
array=( one two three )

for i in "${array[@]}"
do
echo $i
done
#! /bin/bash

Unix[0]='Debian'
Unix[1]='Red hat'
Unix[2]='Ubuntu'
Unix[3]='Suse'

echo ${Unix[1]}

mit Loop ausgeben

a=0
for i in "${Unix[@]}"
do
echo ${Unix[a]}
((a++))
done

# array deklariren
declare -a Unix=('Debian' 'Red hat' 'Suse' 'Fedora');
echo ${#Unix[@]} #Anzahl der elemente in array

 

sleep 5 #5 sekunden pause
instance=`ps auxf | grep ffmpeg | wc -l`
date=`date "+%F %T"`

echo $date
echo $instance
if [ ! $instance == 8 ];
then
echo $date" ffmpegstarter instance"$instance" restart" >> /tmp/ffstatus.log;
. /source/ffmpegstarter.sh
else
echo $date" instance ok">> /tmp/ffstatus.log
fi

 Zwei Variablen vergleichen

if [[ "$arch" == "x86_64" ]];then
echo $arch
fi

if [[ "$arch" != "x86_64" ]];then
echo $arch
fi

 

string in array umwandeln

sentence="this is a story"
stringarray=($sentence)
echo ${stringarray[0]}

Datei Zeile für Zeile einlesen und ausgeben

cat filename | while read LINE
do
echo $LINE
done

 Eingabe einlesen und auswerten

while true; do
read -p "Do you wish to install this program?" yn
case $yn in
[Yy]* ) make install; break;;
[Nn]* ) exit;;
* ) echo "Please answer yes or no.";;
esac
done

dialog anzeigen

apt-get install dialog

# infobox
dialog --infobox "Dieser Vorgang kann ein wenig dauern" 5 50

#msgbox
dialog --msgbox "Done! Alle Löschvorgänge ausgeführt" 5 50

#prozes in %
echo 20 | dialog --gauge "amount of warez deleted" 10 30

nützlich Links:

http://www.thegeekstuff.com/2010/06/bash-array-tutorial/

http://www.cc-c.de/german/linux/linux-dialog.php

http://openbook.rheinwerk-verlag.de/shell_programmierung/shell_007_007.htm

https://www.cyberciti.biz/faq/bash-for-loop/