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