[python] bash script do Pythonu
jenda.zakransky na gmail.com
jenda.zakransky na gmail.com
Úterý Září 30 13:09:34 CEST 2014
Ahoj mam nize jednoduchy skript v bashi, ktery bych potreboval prevest do Pythonu, uz tomu venuji nejaky cas, ale proste to nejde a nejde, bylo by mozne nekoho poprosit o pomoc, moc dekuji
Cilem tohoto skriptu je prevedeni a poslani message log filu z predesleho dne z jednoho serveru na druhy, tzn. ze dnes budu prevadet full daily log z predesleho dne.
Originalni logy jsou v teto podobe ulozeny /opt/log/maillog-20140929. Tento log se diky skriptu nejdrive kopiruje prejmenovany z podoby maillog-20140929 na hostname.vcerejsidatum.gz do directory /tmp.
Odtud dochazi ke kopirovani na remote server taktez do directory /opt/log/maillog a po zkopirovani je soubor z directory /tmp smazan.
Nejvetsi problem mi dela zadani promenne, ktera ma v bashi nasledujici podobu fdate=$(date +%Y%m%d -d "-1 day") # vcerejsi datum - promenna fdate se odkazuje na vcerejsi den.
HOTOVO
#!/bin/bash
path=/opt/log #jsem tedy v directory /opt/log
fdate=$(date +%Y%m%d -d "-1 day") # vcerejsi datum
file=maillog-$fdate # log file ze vcerejska ktery se bude prenaset
cp $path/$file /tmp/$HOSTNAME-$file #zkopci $file do tempu pod novym jmenem; systemova promenna $HOSTNAME obsahuje hostname, tak neni treba vytvaret novou promennou
gzip /tmp/$HOSTNAME-$file # zabali log,
rserver=user na remoteserver.edu # remote server
rpath=/opt/log/maillog # remote path
scp /tmp/$HOSTNAME-$file.gz $rserver:$rpath # zkopiruje na remote server do remote path
rm /tmp/$HOSTNAME-$file.gz # uklidi po sobe
#hotovo
Další informace o konferenci Python