This commit is contained in:
Nick Bebout 2011-03-12 02:43:49 +00:00
parent 5fd1a57d36
commit 901af35fb8
7 changed files with 71 additions and 10 deletions

10
CREDITS
View file

@ -1,4 +1,12 @@
Eric Yung (Suggested --sep1 option) and tested it, and found a bug about it.
Tommi Lätti
Suggested csv file loop (HUGE MIGRATION section) in pod doc.
Vincent W.S. Tam
Suggested --subscribed option.
Eric Yung
(Suggested --sep1 option) and tested it, and found a bug about it.

View file

@ -1,15 +1,21 @@
RCS file: RCS/imapsync,v RCS file: RCS/imapsync,v
Working file: imapsync Working file: imapsync
head: 1.47 head: 1.48
branch: branch:
locks: strict locks: strict
gilles: 1.48
access list: access list:
symbolic names: symbolic names:
keyword substitution: kv keyword substitution: kv
total revisions: 47; selected revisions: 47 total revisions: 48; selected revisions: 48
description: description:
---------------------------- ----------------------------
revision 1.48 locked by: gilles;
date: 2003/11/21 04:23:10; author: gilles; state: Exp; lines: +26 -4
Added "HUGE MIGRATION" pod section. (Thanks
Tommi Lätti
----------------------------
revision 1.47 revision 1.47
date: 2003/11/21 03:15:31; author: gilles; state: Exp; lines: +19 -4 date: 2003/11/21 03:15:31; author: gilles; state: Exp; lines: +19 -4
Added a SECURITY pod doc section. Added a SECURITY pod doc section.

21
README
View file

@ -1,7 +1,7 @@
NAME NAME
imapsync - synchronize mailboxes between two imap servers. imapsync - synchronize mailboxes between two imap servers.
$Revision: 1.47 $ $Revision: 1.48 $
INSTALL INSTALL
Get imapsync at http://www.linux-france.org/prj/imapsync/dist/ Get imapsync at http://www.linux-france.org/prj/imapsync/dist/
@ -140,6 +140,23 @@ IMAP SERVERS
Rate imapsync : http://freshmeat.net/projects/imapsync/ Rate imapsync : http://freshmeat.net/projects/imapsync/
HUGE MIGRATION
If you have many mailboxes to migrate think about a little shell
program. Write a file called file.csv (for example) containing users and
passwords. The separator used in this example is ';'
The file.csv file content is :
user0001;password0001;user0002;password0002
user0011;password0011;user0012;password0012 ...
And the shell program is just :
{ while IFS=';' read u1 p1 u2 p2; do imapsync --user1 $u1 --password1
$p1 --user2 $u2 --password2 $p2 ... done ; } < file.csv
Welcome in shell programming !
SIMILAR SOFTWARES SIMILAR SOFTWARES
offlineimap : http://gopher.quux.org:70/devel/offlineimap/ offlineimap : http://gopher.quux.org:70/devel/offlineimap/
mailsync : http://mailsync.sourceforge.net/ mailsync : http://mailsync.sourceforge.net/
@ -148,5 +165,5 @@ SIMILAR SOFTWARES
Feedback (good or bad) will be always welcome. Feedback (good or bad) will be always welcome.
$Id: imapsync,v 1.47 2003/11/21 03:15:31 gilles Exp $ $Id: imapsync,v 1.48 2003/11/21 04:23:10 gilles Exp gilles $

View file

@ -1 +1 @@
1.47 1.48

View file

@ -4,7 +4,7 @@
imapsync - synchronize mailboxes between two imap servers. imapsync - synchronize mailboxes between two imap servers.
$Revision: 1.47 $ $Revision: 1.48 $
=head1 INSTALL =head1 INSTALL
@ -163,6 +163,28 @@ are useful to know the softwares. Example:
Rate imapsync : http://freshmeat.net/projects/imapsync/ Rate imapsync : http://freshmeat.net/projects/imapsync/
=head1 HUGE MIGRATION
If you have many mailboxes to migrate think about a little
shell program. Write a file called file.csv (for example)
containing users and passwords.
The separator used in this example is ';'
The file.csv file content is :
user0001;password0001;user0002;password0002
user0011;password0011;user0012;password0012
...
And the shell program is just :
{ while IFS=';' read u1 p1 u2 p2; do
imapsync --user1 $u1 --password1 $p1 --user2 $u2 --password2 $p2 ...
done ; } < file.csv
Welcome in shell programming !
=head1 SIMILAR SOFTWARES =head1 SIMILAR SOFTWARES
offlineimap : http://gopher.quux.org:70/devel/offlineimap/ offlineimap : http://gopher.quux.org:70/devel/offlineimap/
@ -172,7 +194,7 @@ Rate imapsync : http://freshmeat.net/projects/imapsync/
Feedback (good or bad) will be always welcome. Feedback (good or bad) will be always welcome.
$Id: imapsync,v 1.47 2003/11/21 03:15:31 gilles Exp $ $Id: imapsync,v 1.48 2003/11/21 04:23:10 gilles Exp gilles $
=cut =cut
@ -200,12 +222,12 @@ my(
use vars qw ($opt_G); # missing code for this will be option. use vars qw ($opt_G); # missing code for this will be option.
$rcs = ' $Id: imapsync,v 1.47 2003/11/21 03:15:31 gilles Exp $ '; $rcs = ' $Id: imapsync,v 1.48 2003/11/21 04:23:10 gilles Exp gilles $ ';
$rcs =~ m/,v (\d+\.\d+)/; $rcs =~ m/,v (\d+\.\d+)/;
$VERSION = ($1) ? $1 : "UNKNOWN"; $VERSION = ($1) ? $1 : "UNKNOWN";
$error=0; $error=0;
my $banner = '$RCSfile: imapsync,v $ ' . '$Revision: 1.47 $ ' . '$Date: 2003/11/21 03:15:31 $ ' . "\n"; my $banner = '$RCSfile: imapsync,v $ ' . '$Revision: 1.48 $ ' . '$Date: 2003/11/21 04:23:10 $ ' . "\n";
unless(defined(&_SYSEXITS_H)) { unless(defined(&_SYSEXITS_H)) {
# 64 on my linux box. # 64 on my linux box.

2
learn/file.csv Normal file
View file

@ -0,0 +1,2 @@
user0001;password0001;user0002;password0002
user0011;password0011;user0012;password0012
1 user0001 password0001 user0002 password0002
2 user0011 password0011 user0012 password0012

6
learn/hugemigr Normal file
View file

@ -0,0 +1,6 @@
#!/bin/sh
{while IFS=';' read u1 p1 u2 p2; do
imapsync --user1 $u1 --password1 $p1 --user2 $u2 --password2 $p2 ...
done ; } < file.csv