Bash obter os email do servidor de Surgemail

Por vezes necessito de obter todos os email’s que temos no nosso servidor de surgemail, para preenchermos algum report ou documento.

Podemos obter essa informação através do seguinte script de bash shell.

#!/bin/bash

# descobre a directoria do nwauth
path2nwauth=$(echo /$(echo $(grep g_authent_process /etc/surgemail.ini) | cut -d"/" -f2- | tr -d '"'))

# captura os dominios existentes no surgemail
domains=$(grep vdomain /etc/surgemail.ini | cut -d '"' -f 4)

cd $path2nwauth
for dom in $domains
do
 users=$(/usr/local/surgemail/nwauth -search @$dom | cut -d" " -f2 | grep $dom )
 for user in $users
 do
  echo -ne ${user}\\n
 done
done

Com este script obtém todos os emails que existem no seu servidor de surgemail.

Pode redireccionar o output para um ficheiro e importar em outro programa…