Удаление случайно разосланных писем в Zimbra
- firefedot
- 26 июл. 2015 г.
- 1 мин. чтения
Так как память может подводить, а мыcли путаться, то приведу тут скрипт которым удаляю письма случайно отправленные всем. Да, иногда люди так поступают)
Ниже Скрипт на bash, а заним на php, для вызова его со страницы
#!/bin/bash eval $1 export DATA=$FULLDATE #export TEXT=$TEMA delmail() { # functiom deleting mail length_id=`awk '{print $0}' $id | wc -l` echo $length_id t=0 while [[ $t -lt $length_id ]] do let t++ number_id=`awk '{print $2}' $id | sed -n ''${t}' p'` echo $number_id echo $user #/opt/zimbra/bin/zmmailbox -z -m $user deleteMessage $number_id /opt/zimbra/bin/zmmailbox -z -m $user deleteConversation $number_id done RES=$? if [ "$RES" == "0" ]; then echo "[Ok]"; else echo "[Err]"; fi } delpath="/opt/www/html/send/tema_del.txt" id="/home/netmaster/script_zimbra/mail.id" DELTEXT=`awk '{print $0}' $delpath` echo "$DELTEXT" echo "$DATA" #DELTEXT="оборудования" #user="client@in.net" DOMAIN_NAME="in.net" EMAIL=/home/netmaster/script_zimbra/email.list /opt/zimbra/bin/zmprov -l gaa $DOMAIN_NAME | sort > $EMAIL length=`awk '{print $0}' $EMAIL | wc -l` t_u=0 while [[ $t_u -lt $length ]] do let t_u++ user=`awk '{print $1}' $EMAIL | sed -n ''${t_u}' p'` if [[ $DELTEXT = "" ]]
then echo "Нет темы" echo "ВВедите слово для поиска. Если вам нужно удалить много писем по дате - воспользутесь другим скриптом" exit; else echo "тема письма задана" /opt/zimbra/bin/zmmailbox -z -m $user s -l 30 in:Inbox | grep $DATA | grep "$DELTEXT" > $id #| awk ' delmail fi done echo -n > $delpath
Продолжение чуть позже...

Comments