Bash näited 2013: Difference between revisions
From ICO wiki
Jump to navigationJump to search
(2 intermediate revisions by one other user not shown) | |||
Line 8: | Line 8: | ||
# loob kausta, kui seda veel ei ole | # loob kausta, kui seda veel ei ole | ||
# kui kausta ei saa luua, siis ütleb seda kasutajale | # kui kausta ei saa luua, siis ütleb seda kasutajale | ||
# skript tagastab 0, kui | # skript tagastab 0, kui kausta loomine õnnestus | ||
# skript tagastab 1, kui | # skript tagastab 1, kui kaust on olemas | ||
# skript tagastab 2, kui kausta loomine ei õnnestunud | # skript tagastab 2, kui kausta loomine ei õnnestunud | ||
Line 26: | Line 26: | ||
} | } | ||
fi | fi | ||
exit 0 | |||
</source> | |||
=Skript arhiveerib *.txt failid= | |||
<source lang="bash"> | |||
#!/bin/bash | |||
# Loo skript, mis leiab kasutaja kodukaustast kõik .txt laiendiga failid ja | |||
# teeb neist pakitud varukoopia nimega failid-AASTA-KUU-PÄEV.tar.gz | |||
# fail tuleb luua kasutaja kodukausta | |||
# Näiteks failid-2013-02-12.tar.gz | |||
# Skript tagastab 0, kui kõik õnnestus | |||
# Skript tagastab 1, kui faili loomine ei õnnestunud | |||
FAILINIMI=$HOME/failid-$(date +%Y-%m-%d).tar.gz | |||
NIMEKIRI=$(find $HOME -name '*.txt') | |||
tar cfz $FAILINIMI $NIMEKIRI || exit 1 | |||
exit 0 | |||
</source> | |||
=Tunnis näitena lahendatud ülesenne (Robert Vane)= | |||
<source lang="bash"> | |||
#!/bin/bash | |||
#Robert Vane | |||
export LC_ALL=C | |||
export LANG=C | |||
muutuja=$(less /home/student/Töölaud/robot.itcollege.ee-access.log | cut -d' ' -f1 | sort -u) | |||
for word in $muutuja | |||
do | |||
ip=$word | |||
var=$(host $word) | |||
var1=$? | |||
if [ $var1 -eq 0 ] | |||
then | |||
echo $var | cut -d' ' -f5 | |||
fi | |||
if [ $var1 -eq 1 ] | |||
then | |||
echo "$ip HOSTI EI LEITUD" | |||
fi | |||
done | |||
exit 0 | exit 0 | ||
</source> | </source> |
Latest revision as of 09:33, 27 September 2015
Siit lehelt leiad tunnis tetud bash näited
Skript loob kausta
#!/bin/bash
# Loo skript, mis küsib kasutajalt kausta nime
# loob kausta, kui seda veel ei ole
# kui kausta ei saa luua, siis ütleb seda kasutajale
# skript tagastab 0, kui kausta loomine õnnestus
# skript tagastab 1, kui kaust on olemas
# skript tagastab 2, kui kausta loomine ei õnnestunud
read -p "Palun sisesta kausta nimi:" KAUST
if [ -d "$KAUST" ]
then
echo "Kaust $KAUST on juba olemas"
exit 1
else
mkdir "$KAUST" || {
echo "Kasuta loomine ebaõnnestus"
exit 2
}
fi
exit 0
Skript arhiveerib *.txt failid
#!/bin/bash
# Loo skript, mis leiab kasutaja kodukaustast kõik .txt laiendiga failid ja
# teeb neist pakitud varukoopia nimega failid-AASTA-KUU-PÄEV.tar.gz
# fail tuleb luua kasutaja kodukausta
# Näiteks failid-2013-02-12.tar.gz
# Skript tagastab 0, kui kõik õnnestus
# Skript tagastab 1, kui faili loomine ei õnnestunud
FAILINIMI=$HOME/failid-$(date +%Y-%m-%d).tar.gz
NIMEKIRI=$(find $HOME -name '*.txt')
tar cfz $FAILINIMI $NIMEKIRI || exit 1
exit 0
Tunnis näitena lahendatud ülesenne (Robert Vane)
#!/bin/bash
#Robert Vane
export LC_ALL=C
export LANG=C
muutuja=$(less /home/student/Töölaud/robot.itcollege.ee-access.log | cut -d' ' -f1 | sort -u)
for word in $muutuja
do
ip=$word
var=$(host $word)
var1=$?
if [ $var1 -eq 0 ]
then
echo $var | cut -d' ' -f5
fi
if [ $var1 -eq 1 ]
then
echo "$ip HOSTI EI LEITUD"
fi
done
exit 0