From de091cfd802eaa9ae0441d2ad33aa852c77b9e2a Mon Sep 17 00:00:00 2001 From: Sven Seeberg Date: Tue, 12 May 2020 19:27:46 +0200 Subject: [PATCH] Fix SQL query for alias import --- find-forwards.sh | 2 +- import-forward.sh | 11 ++++++++--- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/find-forwards.sh b/find-forwards.sh index b63bd49..f4da731 100644 --- a/find-forwards.sh +++ b/find-forwards.sh @@ -1,4 +1,4 @@ #!/bin/bash - +rm /root/aliases.sql find /var/vmail/mailboxes/ \( -iname ".qmail-*" ! -iname ".qmail-default" \) -type f -exec /root/import-forward.sh {} \; diff --git a/import-forward.sh b/import-forward.sh index 896c26b..c650dcc 100644 --- a/import-forward.sh +++ b/import-forward.sh @@ -1,15 +1,20 @@ #!/bin/bash -#echo $1 SOURCE=$(/usr/bin/basename $1 | sed "s/\.qmail-//" | sed "s/\:/\./") PATH=$(dirname $1) -#echo "path: $PATH" DOMAIN=$(/usr/bin/basename $PATH) +TARGETS="" while IFS= read -r LINE do if [[ $LINE == \&* ]]; then TARGET=$(echo $LINE | /usr/bin/tr -d "&") echo "$SOURCE@$DOMAIN -> $TARGET" + if [ -z "$TARGETS" ] + then + TARGETS="$TARGET" + else + TARGETS="$TARGETS,$TARGET" + fi fi done < $1 - +echo "INSERT IGNORE INTO alias (address, goto, domain) VALUES ('$SOURCE@$DOMAIN', '$TARGETS', '$DOMAIN')" >> /root/aliases.sql