Spostamento di una gerarchia Maildir sotto un'altro account: Difference between revisions
Jump to navigation
Jump to search
mNo edit summary |
mNo edit summary |
||
| Line 47: | Line 47: | ||
fi | fi | ||
done | done | ||
set -x | #set -x | ||
mkdir .${SRC_CLEAN} | mkdir .${SRC_CLEAN} | ||
mv cur .${SRC_CLEAN} | mv cur .${SRC_CLEAN} | ||
| Line 54: | Line 54: | ||
mv .${SRC_CLEAN}* /home/${DST}/Maildir | mv .${SRC_CLEAN}* /home/${DST}/Maildir | ||
set +x | #set +x | ||
chown -R ${DST}: /home/${DST}/Maildir | chown -R ${DST}: /home/${DST}/Maildir | ||
EOFile | EOFile | ||
Revision as of 11:44, 10 March 2008
Questo script sposta tutta la posta dell'account sorgente in una sottocartella dell'account destinazione.
Uso:
sudo /tmp/sposta_maildir src_account dst_account
cat > /tmp/sposta_maildir <<'EOFile'
#!/bin/bash
SRC="$1"
DST="$2"
SRC_CLEAN=$(echo $SRC | tr . _)
if [ "$(id -u)" -ne "0" ]
then
echo You must be root to run this script. Aborting.
exit 127
fi
if [ -z "$1" -o -z "$2" ]
then
echo Usage: sposta_maildir src_account dst_account
exit 127
fi
if [ ! -e /home/${SRC}/Maildir ]
then
echo /home/${SRC}/Maildir does not exist. Aborting
exit 127
fi
if [ ! -e /home/${DST}/Maildir ]
then
echo /home/${DST}/Maildir does not exist. Aborting
exit 127
fi
echo Moving /home/${SRC}/Maildir to /home/${DST}/Maildir/.${SRC_CLEAN}
cd /home/${SRC}/Maildir
for VAR in .*
do
if [[ "$VAR" != "." && "$VAR" != ".." ]]
then
set -x
mv "$VAR" ".${SRC_CLEAN}$VAR"
set +x
fi
done
#set -x
mkdir .${SRC_CLEAN}
mv cur .${SRC_CLEAN}
mv new .${SRC_CLEAN}
mv tmp .${SRC_CLEAN}
mv .${SRC_CLEAN}* /home/${DST}/Maildir
#set +x
chown -R ${DST}: /home/${DST}/Maildir
EOFile
chmod +x /tmp/sposta_maildir