diff options
Diffstat (limited to 'img/dist/IM/immv.in')
| -rw-r--r-- | img/dist/IM/immv.in | 120 |
1 files changed, 91 insertions, 29 deletions
diff --git a/img/dist/IM/immv.in b/img/dist/IM/immv.in index 88e3232e..9a466110 100644 --- a/img/dist/IM/immv.in +++ b/img/dist/IM/immv.in @@ -5,7 +5,7 @@ ### ### Author: Internet Message Group <img@mew.org> ### Created: Apr 23, 1997 -### Revised: Apr 14, 2000 +### Revised: Dec 7, 2002 ### BEGIN { @@ -13,7 +13,7 @@ BEGIN { @im_src_siteperl@ }; -my $VERSION = "immv version 20000414(IM141)"; +my $VERSION = "immv version 20021207(IM142)"; $Prog = 'immv'; @@ -39,23 +39,22 @@ use vars qw($Prog $EXPLANATION @OptConfig my %NewMsgCache = (); -$EXPLANATION = " -$Prog :: Internet Message Move -$VERSION +$EXPLANATION = "$VERSION +file mail/news message in other folders -Usage: $Prog [options] +folder... msgs... +Usage: $Prog [OPTIONS] FOLDER... MSGS... "; @OptConfig = ( 'src;f;;' => "Set source folder.", 'dst;F@;;' => "Set destination folders.", 'link;b;;' => "Remain original msg in src folder.", + 'SSHServer,S;s;localhost;SSH_server' + => 'SSH port relay server.', 'noharm;b;;' => "Display the commands but do not actually execute them.", 'verbose;b;;' => 'With verbose messages.', 'debug;d;;' => "With debug message.", 'help;b;;' => "Show this message.", - 'SSHServer,S;s;localhost;SSH_server' - => 'SSH port relay server.', ); ## @@ -87,10 +86,10 @@ exit $EXIT_SUCCESS; ## ## Work horse ## -sub immv ($$$) { - my ($src, $dsts, $msgs) = @_; - my (@imap_dsts, @local_dsts); - my ($imap_src, $imap_dst, $news_src, $news_dst) = (0, 0, 0, 0); +sub immv($$$) { + my($src, $dsts, $msgs) = @_; + my(@imap_dsts, @local_dsts); + my($imap_src, $imap_dst, $news_src, $news_dst) = (0, 0, 0, 0); if ($src =~ /^-/) { $news_src = 1; @@ -150,7 +149,7 @@ sub immv ($$$) { } sub local2local($$$) { - my ($src, $dsts, $msgs) = @_; + my($src, $dsts, $msgs) = @_; my @msg_paths = get_impath($src, @$msgs); foreach (@msg_paths) { @@ -159,8 +158,8 @@ sub local2local($$$) { } sub imap2local($$$) { - my ($src, $dsts, $msgs) = @_; - my ($msg, $Message); + my($src, $dsts, $msgs) = @_; + my($msg, $Message); foreach $msg (@$msgs) { $Message = imap_get_message($src, $msg); @@ -170,8 +169,8 @@ sub imap2local($$$) { } sub news2local($$$) { - my ($src, $dsts, $msgs) = @_; - my ($msg, $rc, $Message); + my($src, $dsts, $msgs) = @_; + my($msg, $rc, $Message); foreach $msg (@$msgs) { ($rc, $Message) = nntp_get_message($src, $msg); @@ -180,12 +179,12 @@ sub news2local($$$) { } } -sub refile_one ($$$) { - my ($src, $dsts, $msg) = @_; - my ($dst, $dst_path, $link_it); +sub refile_one($$$) { + my($src, $dsts, $msg) = @_; + my($dst, $dst_path, $link_it); foreach $dst (@{$dsts}) { - if ($NewMsgCache{$dst}){ + if ($NewMsgCache{$dst}) { $NewMsgCache{$dst} =~ s|([^/]+)$|$1+1|e; # increment cache $dst_path = $NewMsgCache{$dst}; } else { @@ -209,8 +208,8 @@ sub refile_one ($$$) { } } -sub local2imap ($$$) { - my ($src, $dsts, $msgs) = @_; +sub local2imap($$$) { + my($src, $dsts, $msgs) = @_; my $msg; foreach $msg (@$msgs) { @@ -222,9 +221,9 @@ sub local2imap ($$$) { } } -sub news2imap ($$$) { - my ($src, $dsts, $msgs) = @_; - my ($msg, $rc, $Message); +sub news2imap($$$) { + my($src, $dsts, $msgs) = @_; + my($msg, $rc, $Message); foreach $msg (@$msgs) { ($rc, $Message) = nntp_get_message($src, $msg); @@ -233,20 +232,83 @@ sub news2imap ($$$) { } } -sub imap2imap ($$$) { +sub imap2imap($$$) { imap_refile(@_); } -sub uniq (@) { +sub uniq(@) { my @array = @_; my %hash; - foreach (@array){ + foreach (@array) { $hash{$_} = $_; } return keys(%hash); } +__END__ + +=head1 NAME + +immv - file mail/news message in other folders + +=head1 SYNOPSIS + +B<immv> [OPTIONS] FOLDER... MSGS... + +=head1 DESCRIPTION + +The I<immv> command moves messages from the source folder to the +destination folders. + +This command is provided by IM (Internet Message). + +=head1 OPTIONS + +=over 5 + +=item I<-s, --src=FOLDER> + +Set source folder. Default value is "+inbox". + +=item I<-d, --dst=FOLDER,FOLDER...> + +Set destination folders. "--dst=+xxx" is equivalent to "+xxx". + +=item I<-l, --link={on,off}> + +Remain original msg in src folder. + +=item I<-S, --sshserver=SERVER> + +SSH port relay server. + +=item I<-n, --noharm={on,off}> + +Display the commands but do not actually execute them. + +=item I<-v, --verbose={on,off}> + +Print verbose messages when running. + +=item I<--debug=DEBUG_OPTION> + +Print debug messages when running. + +=item I<-h, --help> + +Display help message and exit. + +=back + +=head1 COPYRIGHT + +IM (Internet Message) is copyrighted by IM developing team. +You can redistribute it and/or modify it under the modified BSD +license. See the copyright file for more details. + +=cut + ### Copyright (C) 1997, 1998, 1999 IM developing team ### All rights reserved. ### |
