Важно! флудить здесь не надо!!! Программированием занимался еще в институте, чтобы решить данную задачу нужно потратить несколько дней на книжки, а решение требуется уже вчера.Итак, нужно периодически просматривать пути на предмет наличия там файлов в определенной папке (IMP_FOLDER) и, в случае их присутствия, забэкапить их и отправить архив по назначению. После чего текущую папку требуется очистить.
Навоял следующее:
#!/usr/local/bin/bash
TODAY=`date "+%Y-%m-%d"`
BASEDIR=/tmp
logfile=empty.log
var[0]=/mnt/pathtores2/res02
var[1]=/mnt/pathtores3/res03
var[2]=/mnt/pathtoAB/AB
...
var[430]=/mnt/pathtoother/other
ftpuser=blablabla
ftppass=blablabla
remote=blablabla
/bin/mkdir -p $BASEDIR/$TODAY;
echo "##### Result by $TODAY" >> $BASEDIR/$logfile
for PREF in ${var[@]}; do
cd $PREF
if [ "$(ls -A IMP_FOLDER)" ]
then
/usr/local/bin/zip -r $BASEDIR/$TODAY/$RANDOM.zip $PREF/IMP_FOLDER;
/usr/local/bin/lftp -c "o $ftpuser:$ftppass@$remote && mirror -R $BASEDIR/$TODAY";
rm -rf IMP_FOLDER/*
else
echo "Folder "IMP_FOLDER" in $PREF is empty! \
Nothing to do." >> $BASEDIR/$logfile
fi
done
rm -rf $BASEDIR/$TODAY
Затык с именем архива... Пока я его делаю с рандомным именем, а нужно, чтобы имя архива совподало с именем последней папки в пути (т.е. res02, res03, AB и т.д.)
HELLp, pls!