четверг, 18 февраля 2010 г.

Скрипт подсчета параметра в DBF

Нужно суммировать количество записей с определенными параметрами в куче dbf. Сугубо для внутреннего использования.

Требуется пакет dbf из оверлея sunrise
portals.sh
#!/bin/bash

if [ -z $1 ]; then
number=$(kdialog --inputbox "Введи дату выхода газеты:" --title "Подсчет портальных объявлений")

else
number=$1
fi
if [ $number ]; then
MYMSG=""
NEED_DATE=$(echo $number|sed s/'\.'/'\\\.'/)
MYMSG=$(echo "Объявления с портала в газете от $number\n\n")
let count=0;
let a=0;
for i in $(find /net/anna/ad64/Int_Ed/ -regex '.*\ .[латные|ото].*'$NEED_DATE'.*[0-9]+\.bak$' -exec dbf '{}' \; |grep -o "AD2_FMT: [1-9][0-9]"| awk {'print $2'}|sort); do
if [ $a -ne $i ]; then
if [ $count != 0 ]; then
MYMSG=$(echo $MYMSG": "$count"\n");
fi
case $i in
10)
t="Выворотка"
;;
20)
t="Рамка"
;;
30)
t="Звездочка"
;;
40)
t="Точка"
;;
45)
t="Фото"
;;
54)
t="Жирное2"
;;
56)
t="Жирное3"
;;
*)
t="$i:"
;;
esac
MYMSG=$(echo $MYMSG$t)
let a=$i
let count=1;
else
let count=$count+1;
fi
done
MYMSG=$(echo $MYMSG": "$count"\n")
echo -e $MYMSG|kwrite --stdin
fi

Комментариев нет:

Отправить комментарий