bash-uvozovani promenne

Jaroslav Votruba jaroslav.votruba at keytec.cz
Wed Oct 15 10:18:39 CEST 2008


nevim jak dal s tim scriptem

tohle je stavajici script pro jedno zalohovani


uzivatel="votruba"
heslo="aaaaaa"


#promenne data a casu
datum=`date "+%Y-%m-%d" `
hodinZ=`date "+%H:%M:%S" `      #zacatek zalohovani


#promenne pro poslani mailu
predmet="Zaloha souboru z Windows stanic z ${datum}"
email="jaroslav.votruba at aaaaa.cz"
obsah="${datum}-backup.log"

#zjisteni Ip adres z NETBIOS jmena
ip=`nmblookup -S ${uzivatel}-wxp | sed -n '2p' | cut -d " " -f1`

#provedeni zalohy  a souboru pro parsovani logu
smbtar -v -s $ip -u ${uzivatel} -p ${heslo} -t 
/home/votruba/smb/${datum}-${uzivatel} -x share -d prokes > docasny.txt 2>&1

#vytvoreni logoveho souboru a vyparsovani udaju y docasneho souboru
touch ${datum}-backup.log
echo zaloha ${uzivatel} byla zahajena v ${hodinZ} >> ${datum}-backup.log
head -n2 docasny.txt >> ${datum}-backup.log
tail -n2 docasny.txt >> ${datum}-backup.log

hodinK=`date "+%H:%M:%S" `      #konec zalohovani

echo zaloha  byla dokoncena v ${hodinK} >> ${datum}-backup.log "

--------------+++-+++---------------

"

#smazani docasneho souboru
rm $PWD$"/docasny.txt"

mail -s "${predmet}" ${email} < ${obsah}




timhle jsem zatim naplnil pole a pomoci for  jsem si zkontroloval, ze se 
vypisuji. Ale netusim, jak to zkombinovat se stavajicim scriptem, aby mi 
script prorotoval se vsemi polozkami poli. Precet jsem o bashi co se 
dalo, ale fakt mi schazi programatorsky premejsleni. neco jednoduchyho 
jsem schopnej sesmolit, ale nemam zadny zkusennosti a nemam se ani koho 
zeptat, kdyz se seknu na nejake prkotine.
PS- naplneni pole pomoci pole=( jedna dva tri ctyri pet ) jsem zamitnul 
kvuli neprehlednosti a mozne chybe pri parovani jmena,hesla a cesty

declare -a uzivatel

uzivatel[1]=votruba
uzivatel[2]=votruba2
uzivatel[3]=votruba3
uzivatel[4]=votruba4
uzivatel[5]=votruba5
uzivatel[6]=votruba6
uzivatel[7]=votruba7
uzivatel[8]=votruba8


declare -a heslo

heslo[1]=passwd
heslo[2]=passwd2
heslo[3]=passwd3
heslo[4]=passwd4
heslo[5]=passwd5
heslo[6]=passwd6
heslo[7]=passwd7
heslo[8]=passwd8


declare -a cesta

cesta[1]=path
cesta[2]=path2
cesta[3]=path3
cesta[4]=path4
cesta[5]=path5
cesta[6]=path6
cesta[7]=path7
cesta[8]=path8

for uzivatel in  ${uzivatel[*]}
do echo $uzivatel
done


More information about the Users-l mailing list