Bash näited 2013: Difference between revisions

From ICO wiki
Jump to navigationJump to search
Mernits (talk | contribs)
Created page with '=Siit lehelt leiad tunnis tetud bash näited= <source lang="bash> #!/bin/bash # Loo skript, mis küsib kasutajalt kausta nime # loob kausta, kui seda veel ei ole # kui kausta ei…'
 
Vpuik (talk | contribs)
 
(4 intermediate revisions by one other user not shown)
Line 1: Line 1:
=Siit lehelt leiad tunnis tetud bash näited=
=Siit lehelt leiad tunnis tetud bash näited=


<source lang="bash>
 
=Skript loob kausta=
<source lang="bash">
#!/bin/bash
#!/bin/bash
# Loo skript, mis küsib kasutajalt kausta nime
# Loo skript, mis küsib kasutajalt kausta nime
# 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 kasta loomine õnnestus
# skript tagastab 0, kui kausta loomine õnnestus
# skript tagastab 1, kui kasut on olemas
# skript tagastab 1, kui kaust on olemas
# skript tagastab 2, kui kausta loomine ei õnnestunud
# skript tagastab 2, kui kausta loomine ei õnnestunud


Line 24: 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