prosim o pomoc se scriptem
Jan Pechanec
jp at devnull.cz
Fri Sep 8 14:07:40 CEST 2006
On Fri, 8 Sep 2006, Jaroslav Votruba wrote:
> snazim se napsat jednoduchy scriptik na zalohu jedne DB z mysq a protoze s tim
> zacinam potreboval bych poradit s nekolika drobnostmi(pro vas,pro me zatim
> nadlidskej ukol)
>
> #!/bin/sh
> USER="uzivatel" #dopln si uzivatele
> HESLO="tvoje_heslo" #dopln si heslo
> DATE=`date +%Y-%m-%d` #format datumu
> DATABASES="PwkDemo pwkdemoII" #nazvy db psat za sebe oddelene mezerou
> NAMEBCUP=`$DATE $DATABASES.sql` #jmeno zalohy
nepuzival bych mezery ve jmenech, navic tady mas zpetny uvozovky
(command substitution)
> MAIL=`mail at neco.cz mail2 at neco.cz` #maily ,kam budou posilany vysledky
opet backticks
> zalohovani-psat za sebe oddelene mezerou
> LOG=`/var/log/pwk_backup/$NAMEBCUP.log` #cesta k logu
> OK=`Zalohovani databaze $DATABASES probehlo v poradku` #zaloha je vytvorena
zase backticks, u obojiho
> FUCK="Zalohovani databaze $DATABASES se nezdarilo" #zaloha neni vytvorena
>
>
> mysqldump -a -Q -c --user=$USER --password=$HESLO $DATABASES > "$CESTA
> $NAMEBCUP"
>
> ####PRVNI VEC CO SE MI NELIBI###
> #pokud do DATABASES napisu vic DB prestava mi to fungovat(logicky),bohuzel
> nevim jak to vse upravit ,aby pro kazdou DB co vypisu do DATABASES mi to
> vytvorilo zalohu a log
pak to neumi mysqldump
muzes to udelat treba takto:
for i in $DATABASES; do
mysqldump .....
done
>
>
> #kontrola vytvoreni souboru a vytvoreni logu
>
> if
> test -f "$CESTA $NAMEBCUP" #Soubor existuje
nepouzivej test, ale [; to je spis konvence nez chyba
> then
> cd "$LOG" #Vytvor log
> echo $OK > "$NAMEBCUP"
chybi ti fi
>
> ####DRUHA VEC CO SE MI NELIBI###
> #jak se muzu vyhnout prikazu cd-predstavoval bych si to nejak jako echo $OK >
> "$LOG $NAMEBCUP",ale to je nefuncni
$LOG/$NAMEBCUP
> #proste bych chtel mit cestu na jednom radku
>
> else
> cd "$LOG" # Soubor neexistuje. Vypis tedy
> chybu
> echo $FUCK > "$NAMEBCUP"
> exit
> fi
> ####TRETI VEC CO SE MI NELIBI###
> #nevim jak mam log vlozit do mailu a poslat na MAIL
cat $LOG | mail -s xxx xxx at yyy.cz
h.
--
Jan Pechanec <jp (at) devnull (dot) cz>
http://www.devnull.cz
More information about the Users-l
mailing list