4 # Глобальные переменные
6 my $isRemoveDuplicates = 0;
7 my $isSplitByDomens = 0;
10 # Парсим параметры командной строки
15 if($arg =~ /^-{1,2}.+$/){
16 if ($arg =~ /^-{1,2}version$/){
19 } elsif ($arg =~ /^-{1,2}help$/){
22 } elsif ($arg eq '--remove-duplicates'){
23 $isRemoveDuplicates = 1;
24 } elsif ($arg eq '--split-by-domens'){
26 } elsif ($arg =~ /--exclude-domen[=]{0,1}(\w*)/){
28 illegalUse() if $excludeDomen ne '' && $arg !~ /--exclude-domen=\w*/;
29 $excludeDomen = shift() if $excludeDomen eq '';
30 illegalUse() if $excludeDomen eq '';
35 illegalUse() if $fileName ne '';
47 # Вывод информации о программе
50 E-mail filter tool for Aptech
53 Copyright 2011, David Veliev (gotoindvdum@gmail.com).
55 This program may be used under Apache License 2.0.
61 # Вывод доступных параметров командной строки
63 my $help = q {usage: }.$0. q { [KEYS] FILENAME [KEYS]
65 Parse for e-mails file FILENAME with arguments KEYS and print result to standart output stream.
68 --help print this help
69 --version print version and information about this script
70 --remove-duplicates remove e-mail duplicates
71 --split-by-domens split e-mails by domens
72 --exclude-domen[=]DOMEN exclude e-mails with domen DOMEN
77 # Неправильный формат параметров командной строки
79 print "Illegal use!\n\n";
86 print "fileName = $fileName\n";
87 print "isRemoveDuplicates = $isRemoveDuplicates\n";
88 print "isSplitByDomens = $isSplitByDomens\n";
89 print "excludeDomen = $excludeDomen\n";