#!/bin/bash rm /root/users.sql echo "DELETE FROM mailbox;" >> /root/users.sql echo "DELETE FROM alias;" >> /root/users.sql while IFS= read -r LINE do USER=$(echo $LINE | awk -F':' '{print $1}') HASH=$(echo $LINE | awk -F':' '{print $2}') NAME=$(echo $LINE | awk -F':' '{print $5}' | tr -cd '\11\12\15\40-\176' | sed "s/'/\\\'/g") DOMAIN=$(echo $LINE | awk -F':' '{print $6}' | awk -F'/' '{print $6}') MAILUSER="$USER@$DOMAIN" echo "$MAILUSER;$NAME;$HASH" QUERY_DOMAIN="INSERT IGNORE INTO domain (domain) VALUES ('$DOMAIN');" echo $QUERY_DOMAIN >> /root/users.sql QUERY_USER="INSERT INTO mailbox (username, password, name, domain, maildir, local_part) VALUES ('$MAILUSER','{MD5-CRYPT}$HASH','$N$ echo $QUERY_USER >> /root/users.sql QUERY_ALIAS="INSERT INTO alias (address, goto, domain) VALUES ('$MAILUSER', '$MAILUSER', '$DOMAIN');" echo $QUERY_ALIAS >> /root/users.sql if [ "$USER" == "postmaster" ]; then QUERY_ADMIN="INSERT INTO domain_admins (username, domain) VALUES ('$MAILUSER', '$DOMAIN');" echo $QUERY_ADMIN >> /root/users.sql fi done < /root/collected_vpasswd