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 1: | Line 1: | ||
Questo script sposta tutta la posta dell'account sorgente in una sottocartella dell'account destinazione. | |||
Uso: | |||
sudo /tmp/sposta_maildir src_account dst_account | |||
<pre> | <pre> | ||
cat | sudo tee /tmp/sposta_maildir > /dev/null <<'EOFile' | |||
#!/bin/bash | #!/bin/bash | ||
SRC=" | SRC="$1" | ||
DST=" | DST="$2" | ||
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} | |||
cd /home/${SRC}/Maildir | cd /home/${SRC}/Maildir | ||
for VAR in .* | for VAR in .* | ||
| Line 12: | Line 41: | ||
if [[ "$VAR" != "." && "$VAR" != ".." ]] | if [[ "$VAR" != "." && "$VAR" != ".." ]] | ||
then | then | ||
set -x | |||
mv "$VAR" ".${SRC}$VAR" | mv "$VAR" ".${SRC}$VAR" | ||
set +x | |||
fi | fi | ||
done | done | ||
set -x | |||
mkdir .${SRC} | mkdir .${SRC} | ||
mv cur .${SRC} | mv cur .${SRC} | ||
| Line 22: | Line 53: | ||
mv .${SRC}* /home/${DST}/Maildir | mv .${SRC}* /home/${DST}/Maildir | ||
set +x | |||
chown -R ${DST}: /home/${DST}/Maildir | chown -R ${DST}: /home/${DST}/Maildir | ||
EOFile | |||
</pre> | </pre> | ||
Revision as of 12:02, 27 December 2007
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 | sudo tee /tmp/sposta_maildir > /dev/null <<'EOFile'
#!/bin/bash
SRC="$1"
DST="$2"
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}
cd /home/${SRC}/Maildir
for VAR in .*
do
if [[ "$VAR" != "." && "$VAR" != ".." ]]
then
set -x
mv "$VAR" ".${SRC}$VAR"
set +x
fi
done
set -x
mkdir .${SRC}
mv cur .${SRC}
mv new .${SRC}
mv tmp .${SRC}
mv .${SRC}* /home/${DST}/Maildir
set +x
chown -R ${DST}: /home/${DST}/Maildir
EOFile