User:Vvinogra: Difference between revisions
From ICO wiki
Jump to navigationJump to search
No edit summary |
|||
Line 31: | Line 31: | ||
fi | fi | ||
exit 0 | exit 0 | ||
</source> | |||
==Skript== | |||
<source lang="bash"> | |||
#!/bin/bash | |||
#Autor: Vadim Vinogradin A21, vvinogra@itcollege.ee | |||
#Versioon: 1.0 | |||
#Käivitamise näide: /home/student/scripts/script.sh /home/student/foto | |||
#Esimene kataloog - kataloog skriptiga /home/student/scripts/script.sh | |||
#Teine kataloog - kataloog piltidega /home/student/foto | |||
if [ $UID -ne 0 ]; then | |||
echo "On vaja olla root!" | |||
exit 1 | |||
fi | |||
#Kontrollime, kas on juba installitud "convert" programm | |||
if which convert >/dev/null; then | |||
echo "Convert on olemas" | |||
else | |||
echo "Convert programmi ei ole, alustan installeerida..." | |||
sudo apt-get install imagemagick | |||
fi | |||
KATALOOG=$1 | |||
#Kustutame "/" lõpus | |||
KATALOOG=`echo $1 | sed -e 's,\(.\)/$,\1,'` | |||
find $KATALOOG/$i -type f | while read file; do | |||
# Kasutame POSIX-klass [:space:] selle jaoks, et leida failide nimed tühikud | |||
if [[ "$file" = *[[:space:]]* ]]; then | |||
#Vahetame tühikud märkiga "_" | |||
mv "$file" `echo $file | tr ' ' '_'` | |||
fi; | |||
done | |||
#Loome kataloogi vana kataloogi jaoks nimega "Katalooginimi.vana" | |||
mkdir "$KATALOOG.vana" | |||
#Kopeerime pildid kataloogile nimega "Katalooginimi.vana" | |||
for i in `ls $KATALOOG` | |||
do | |||
cp $KATALOOG/$i $KATALOOG.vana | |||
done | |||
VIGA=0; | |||
echo "Alustan vähendada pilt(e) 640x480..." | |||
for i in `ls $KATALOOG` | |||
do | |||
echo "Pildi nimi on: $i" | |||
echo "1 - 640x480" | |||
echo "2 - 800x600" | |||
echo "3 - 1024x768" | |||
echo "4 - 1280x800" | |||
echo "5 - 1920x1200" | |||
echo -n "Sistestage number 1-5: " | |||
read number | |||
case $number in | |||
[1] ) | |||
convert $KATALOOG/$i -resize 307200@ $KATALOOG/$i; | |||
;; | |||
[2] ) | |||
convert $KATALOOG/$i -resize 480000@ $KATALOOG/$i; | |||
;; | |||
[3] ) | |||
convert $KATALOOG/$i -resize 786432@ $KATALOOG/$i; | |||
;; | |||
[4] ) | |||
convert $KATALOOG/$i -resize 1024000@ $KATALOOG/$i; | |||
;; | |||
[5] ) | |||
convert $KATALOOG/$i -resize 2304000@ $KATALOOG/$i; | |||
;; | |||
*) echo "Viga! Käivitage skript uuesti ja sisestage number 1-5" | |||
exit 0 | |||
;; | |||
esac | |||
if [ $? -eq 0 ]; then | |||
echo "$i edukalt vähendanud" | |||
#Arvutame vead | |||
else VIGA=$[$VIGA+1] | |||
fi | |||
done | |||
if [ $VIGA -eq 0 ]; then | |||
echo "Kõik on tehtud"; | |||
else echo "Vead, kontrollige omadused."; | |||
fi; | |||
echo "You can find your old files in $KATALOOG.vana" | |||
</source> | </source> |
Revision as of 14:50, 12 May 2011
Bash Quests
Quest 12 kasutaja olemasolu testimine
#!/bin/bash
#Autor: Vadim Vinogradin A21, vvinogra@itcollege.ee
#Versioon 0.2
#Teha skript is_user.sh mis kontrollib, kas kasutaja eksisteerib.
KASUTAJA=$1
#Kontrollib, kas kasutaja on olemas (kui jah - siis näitab "0", kui ei ole - "1")
if [ $(getent passwd $KASUTAJA ) ]; then
exit 0
else
exit 1
fi
exit 0
Quest 12 Grupi olemasolu testimine
#!/bin/bash
#Autor: Vadim Vinogradin A21, vvinogra@itcollege.ee
#Versioon 0.2
#Teha skript is_group.sh mis kontrollib, kas grupp eksisteerib.
GRUPP=$1
#Kontrollib, kas grupp on olemas (kui jah - siis näitab "0", kui ei ole - "1")
if [ $(getent group $GRUPP ) ]; then
exit 0
else
exit 1
fi
exit 0
Skript
#!/bin/bash
#Autor: Vadim Vinogradin A21, vvinogra@itcollege.ee
#Versioon: 1.0
#Käivitamise näide: /home/student/scripts/script.sh /home/student/foto
#Esimene kataloog - kataloog skriptiga /home/student/scripts/script.sh
#Teine kataloog - kataloog piltidega /home/student/foto
if [ $UID -ne 0 ]; then
echo "On vaja olla root!"
exit 1
fi
#Kontrollime, kas on juba installitud "convert" programm
if which convert >/dev/null; then
echo "Convert on olemas"
else
echo "Convert programmi ei ole, alustan installeerida..."
sudo apt-get install imagemagick
fi
KATALOOG=$1
#Kustutame "/" lõpus
KATALOOG=`echo $1 | sed -e 's,\(.\)/$,\1,'`
find $KATALOOG/$i -type f | while read file; do
# Kasutame POSIX-klass [:space:] selle jaoks, et leida failide nimed tühikud
if [[ "$file" = *[[:space:]]* ]]; then
#Vahetame tühikud märkiga "_"
mv "$file" `echo $file | tr ' ' '_'`
fi;
done
#Loome kataloogi vana kataloogi jaoks nimega "Katalooginimi.vana"
mkdir "$KATALOOG.vana"
#Kopeerime pildid kataloogile nimega "Katalooginimi.vana"
for i in `ls $KATALOOG`
do
cp $KATALOOG/$i $KATALOOG.vana
done
VIGA=0;
echo "Alustan vähendada pilt(e) 640x480..."
for i in `ls $KATALOOG`
do
echo "Pildi nimi on: $i"
echo "1 - 640x480"
echo "2 - 800x600"
echo "3 - 1024x768"
echo "4 - 1280x800"
echo "5 - 1920x1200"
echo -n "Sistestage number 1-5: "
read number
case $number in
[1] )
convert $KATALOOG/$i -resize 307200@ $KATALOOG/$i;
;;
[2] )
convert $KATALOOG/$i -resize 480000@ $KATALOOG/$i;
;;
[3] )
convert $KATALOOG/$i -resize 786432@ $KATALOOG/$i;
;;
[4] )
convert $KATALOOG/$i -resize 1024000@ $KATALOOG/$i;
;;
[5] )
convert $KATALOOG/$i -resize 2304000@ $KATALOOG/$i;
;;
*) echo "Viga! Käivitage skript uuesti ja sisestage number 1-5"
exit 0
;;
esac
if [ $? -eq 0 ]; then
echo "$i edukalt vähendanud"
#Arvutame vead
else VIGA=$[$VIGA+1]
fi
done
if [ $VIGA -eq 0 ]; then
echo "Kõik on tehtud";
else echo "Vead, kontrollige omadused.";
fi;
echo "You can find your old files in $KATALOOG.vana"