-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathzmmailbox_apagar_assunto.sh
53 lines (42 loc) · 1.82 KB
/
zmmailbox_apagar_assunto.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
#!/bin/bash
# FABIO S. SCHMIDT - [email protected]
# Criado: 12/03/2017
# Revisado: 18/02/2021
# Script para procurar todas as mensagens com o assunto (subject) informado e deletar
# Limitacao: Expressao regular, qualquer assunto contendo a palavra sera considerado
#FUNCOES E VARIAVEIS PARA O UTILITARIO
NORMAL_TEXT="printf \e[1;34m%-6s\e[m\n" #Azul
ERROR_TEXT="printf \e[1;31m%s\e[0m\n" #Vermelho
INFO_TEXT="printf \e[1;33m%s\e[0m\n" #Amarelo
CHOICE_TEXT="printf \e[1;32m%s\e[0m\n" #Verde
NO_COLOUR="\e[0m" #Branco
#FUNCAO PARA CONFIRMAR A EXCLUSAO DAS MENSAGENS ENCONTRADAS
test_exec()
{
read -p "As seguintes mensagens foram encontradas, DESEJA CONTINUAR E EXCLUIR (sim/nao)?" choice
case "$choice" in
y|Y|yes|s|S|sim ) $NORMAL_TEXT "Iniciando exclusao das mensagens";;
n|N|no|nao ) $INFO_TEXT "Execucacao abortada pelo usuario"
exit 0;;
* ) test_exec ;;
esac
}
###
if [ "$#" != 2 ]
then
$ERROR_TEXT "Utilizacao: $0 [email protected] \"assunto\""
$ERROR_TEXT "Atencao: Por limitacao do zmmailbox, somente 1000 resultados sao retornados por consulta"
exit 1
fi
####
$INFO_TEXT "Procurando mensagens com o assunto $2 na caixa postal $1"
$INFO_TEXT "Atencao: Por limitacao do zmmailbox, somente 1000 resultados sao retornados por consulta"
/opt/zimbra/bin/zmmailbox -z -m "$1" s -l 1000 -t message "subject:$2"|awk '{ if (NR!=1) {print}}' | grep -v -e Id -e "-" -e "^$"
#Executa funcao para confirmar a exclusao das mensagens encontradas
test_exec
for ITEM in `/opt/zimbra/bin/zmmailbox -z -m "$1" s -l 1000 -t message "subject:$2"|awk '{ if (NR!=1) {print}}' | grep -v -e Id -e "-" -e "^$" | awk '{ print $2 }'`
do
echo "Excluindo mensagem $ITEM da caixa postal $1"
/opt/zimbra/bin/zmmailbox -v -z -m $1 dm $ITEM
done
#FIM