URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 7072
[ Назад ]

Исходное сообщение
"Shell скрипт, помогите разобратся:("

Отправлено m_artem , 26-Дек-07 14:32 
Сталкнулся с такой проблемой.
нужен скрипт который будет смотреть в лог фаил /backup/back.log и видеть там такое:
bdvxrbvo qub  2007-08-14 10.45.00  2007-08-14 10.45.01  0  ...............     19     0     0         5          2293715        5          2293715  ALL
offline_standby disk             ---k-c 6.40 (44)
bdvxrcsy qub  2007-08-14 10.55.08  2007-08-14 10.55.09  0  ...............     19     0     0         6          2293944        6          2293944  ALL
offline_standby disk             ---k-c 6.40 (44)
bdvxrcti afd  2007-08-14 10.55.18  2007-08-14 10.55.28  2  ...............     19     0     0         6          2293944        6          2293944  ALL
offline_standby disk             ---k-c 6.40 (44)

где первое это имя каталога куда делался бэкап, а после времени идёт статус бэкапа, где "0" - удачный, любые другие цифры, неудачный бэкап. И потом заходить в каталог /backup/ и удалять папки с неудавшимеся  бэкапами.

Помогите пожалуйста, я просто никогда не имел дела со скриптами на shell:(


Содержание

Сообщения в этом обсуждении
"Shell скрипт, помогите разобратся:("
Отправлено phpcoder , 26-Дек-07 14:38 
[...]

Примерно так.. попробуте, работате или нет.

#!/bin/sh

while read LINE; do
    DIR=`echo $LINE | awk '{print $1}'`
    STATUS=`echo "$LINE" | awk '{print $2}'`
    if [ $STATUS -ne 0 ]; then
        echo "Removing $DIR..."
        rm -rf -- "$DIR"
    fi
done </backup/back.log


P.S. Хорошо составлен вопрос, так что задача не вызвала вопросов.


"Shell скрипт, помогите разобратся:("
Отправлено m_artem , 26-Дек-07 15:42 
>[оверквотинг удален]
>    STATUS=`echo "$LINE" | awk '{print $2}'`
>    if [ $STATUS -ne 0 ]; then
>        echo "Removing $DIR..."
>        rm -rf -- "$DIR"
>
>    fi
>done </backup/back.log
>
>
>P.S. Хорошо составлен вопрос, так что задача не вызвала вопросов.

Спасиб более мение разобрался...