A quem interessar possa...<div>rodando o meu código aqui no windows do trabalho:</div><div><br></div><div><div>C:\>perl -MArchive::Extract -ME -e "A::E->new(archive,$_)->extract for<*.zip>"</div><div>

IO::Handle -> I::H</div><div>Locale::Maketext::Simple -> L::M::S</div><div>List::Util -> L::U</div><div>Tie::Hash -> T::H</div><div>ExtUtils::MM_Unix -> E::M</div><div>ExtUtils::MM -> E::M</div><div>IPC::Cmd -> I::C</div>

<div>Text::ParseWords -> T::P</div><div>Scalar::Util -> S::U</div><div>Module::Load::Conditional -> M::L::C</div><div>File::Spec -> F::S</div><div>ExtUtils::MM_Any -> E::M</div><div>File::Path -> F::P</div>

<div>ExtUtils::Liblist -> E::L</div><div>File::Spec::Win32 -> F::S::W</div><div>Module::Load -> M::L</div><div>warnings::register -> w::r</div><div>Time::HiRes -> T::H</div><div>IO::Seekable -> I::S</div>

<div>Params::Check -> P::C</div><div>File::Basename -> F::B</div><div>ExtUtils::MM_Win32 -> E::M</div><div>version::vxs -> v::v</div><div>Archive::Extract -> A::E</div><div>File::Spec::Unix -> F::S::U</div>

<div>Exporter::Heavy -> E::H</div><div>ExtUtils::MakeMaker -> E::M</div><div>ExtUtils::MY -> E::M</div><div>IO::Select -> I::S</div><div>IPC::Open3 -> I::O</div><div>IO::File -> I::F</div><div>ExtUtils::MakeMaker::Config -> E::M::C</div>

<div>ExtUtils::Liblist::Kid -> E::L::K</div><br>(o "E" da um warn dizendo quais alias ele criou p/ quais modulos...)</div><div><br></div><div><br></div><div>e segue o codigo do E:</div><div><br></div><div><br>

</div><div><div>package E;</div><div><br></div><div>sub import {</div><div>   for my $module(keys %INC) {</div><div>      (my $mod_name = $module) =~ s{/}{::}g;</div><div>      $mod_name =~ s{\.pm$}{}g;</div><div>      my $short = join "::", map{substr $_, 0, 1} split "::", $mod_name;</div>

<div>      if($short =~ /::/ and $short !~ /^\s*$/ and $short !~ /^:|:$|:{4,}/ and $mod_name ne $short){</div><div>         warn $mod_name, " -> ", $short, $/;</div><div>         $mod_name .= "::";</div>

<div>         *GLOB = *{$mod_name};</div><div>         for my $func(keys %{*GLOB}) {</div><div>            my $orig_func = $mod_name . $func;</div><div>            no strict 'refs';</div><div>            my $new = $short . "::$func";</div>

<div>            *{$new} = *{$orig_func};</div><div>         }</div><div>      }</div><div>   }</div><div>}</div><div><br></div><div>42</div></div><div><br></div><div>sim, ele foi feito correndo aqui p/ não pairarem duvidas de q esse modulo é possível e simples...</div>

<div>certamente ele será refatorado antes de ir p/ o cpan...</div><div>tb escreverei alguns testes...</div><div>se alguém estiver interessado em ajudar, eu agradeço muito...</div><div>com a minha mulher gravida fica difícil arrumar tempo p/ essas brincadeiras...</div>

<div><br>Just another Perl Hacker,<br>Fernando (SmokeMachine)<br>
<br><br><div class="gmail_quote">Em 30 de maio de 2012 17:37, Marco Lima <span dir="ltr"><<a href="mailto:braun.lima@gmail.com" target="_blank">braun.lima@gmail.com</a>></span> escreveu:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

Fernando:<br>
<br>
O pior é que vc nem sabe ... essa merda me tirou o sono, fritei a<br>
noite toda porque sabia que existia mas não lembrava como eh .... =(<br>
<br>
definitivamente .... estou ficando velho ... jah estou até caducando!<br>
e esse negócio de só ficar desenhando tá me deixando mais enferrujado<br>
ainda!<br>
<br>
SM++<br>
<div class="im HOEnZb"><br>
Marco Lima<br>
<a href="mailto:braun.lima@gmail.com">braun.lima@gmail.com</a><br>
<a href="mailto:im%3Amago@jabber-br.org">im:mago@jabber-br.org</a><br>
<br>
<br>
</div><div class="im HOEnZb">Em 30 de maio de 2012 17:05, Fernando Oliveira<br>
<<a href="mailto:fernandocorrea@gmail.com">fernandocorrea@gmail.com</a>> escreveu:<br>
><br>
</div><div class="HOEnZb"><div class="h5">> Em 30 de maio de 2012 03:33, Marco Lima <<a href="mailto:braun.lima@gmail.com">braun.lima@gmail.com</a>> escreveu:<br>
><br>
>> estou ficando velho ....<br>
>><br>
>> perl -MArchive::Extract -e<br>
>> 'Archive::Extract->new(archive,$_)->extract for<*.zip>'<br>
><br>
> perl -MArchive::Extract -ME -e 'A::E->new(archive,$_)->extract for<*.zip>'<br>
><br>
> o Módulo "E" ainda não está no CPAN, mas vou por até o fds...<br>
> Ele cria aliases dos modulos com apenas a 1a letra de cada nome...<br>
><br>
> :P<br>
>><br>
>><br>
>> eu gosto mais com map ... mais tah com 3 a mais<br>
>><br>
>> perl -MArchive::Extract -e<br>
>> 'map{Archive::Extract->new(archive,$_)->extract}<*.zip>'<br>
>><br>
>> vamos ver ...<br>
>><br>
>> =)<br>
>><br>
>> Marco Lima<br>
>> <a href="mailto:braun.lima@gmail.com">braun.lima@gmail.com</a><br>
>> <a href="mailto:im%3Amago@jabber-br.org">im:mago@jabber-br.org</a><br>
>><br>
>> Em 30 de maio de 2012 00:35, Gabriel Vieira <<a href="mailto:gabriel.vieira@gmail.com">gabriel.vieira@gmail.com</a>><br>
>> escreveu:<br>
>> > Tá de sacanagem 02?!<br>
>> ><br>
>> > Pro Fernando se divertir mais...<br>
>> ><br>
>> > perl -MArchive::Extract -e'Archive::Extract->new(archive,$_)->extract<br>
>> > for<*.zip>'<br>
>> ><br>
>> ><br>
>> > 2012/5/30 Marco Lima <<a href="mailto:braun.lima@gmail.com">braun.lima@gmail.com</a>><br>
>> >><br>
>> >> Então vamos acabar com essa historia ... seus nazistas !!!!<br>
>> >><br>
>> >> Fernando esta por ai!? ai vai ....<br>
>> >><br>
>> >> perl -MArchive::Extract -e<br>
>> >> 'map{$a=Archive::Extract->new(archive=>$_);$a->extract}<*.zip>'<br>
>> >><br>
>> >> [ ]++<br>
>> >><br>
>> >> Marco Lima<br>
>> >> <a href="mailto:braun.lima@gmail.com">braun.lima@gmail.com</a><br>
>> >> <a href="mailto:im%3Amago@jabber-br.org">im:mago@jabber-br.org</a><br>
>> >><br>
>> >> Register Linux User #483170<br>
>> >> Slackware Linux, for the subgenius<br>
>> >><br>
>> >> "Aquele que pensa que é demasiado grande para fazer trabalhos pequenos<br>
>> >> é talvez demasiado pequeno para realizar grandes trabalhos."<br>
>> >><br>
>> >> "Ter acesso ao conhecimento é um dever de todos; transmitir<br>
>> >> conhecimento é um dever de quem tem."<br>
>> >><br>
>> >> "Na visão do hacker, o sentido da vida está em dedicar-se a uma<br>
>> >> paixão. Esta paixão é, na realidade, uma atividade significativa,<br>
>> >> inspiradora e prazerosa para o indivíduo, seja ela rotulada como<br>
>> >> "trabalho" ou como "diversão."<br>
>> >><br>
>> >> "Ninguém é tão grande que não possa aprender, e nem tão pequeno que<br>
>> >> não possa ensinar"<br>
>> >><br>
>> >> "Compartilhe o seu conhecimento. É uma maneira de alcançar a<br>
>> >> imortalidade"<br>
>> >><br>
>> >><br>
>> >> Em 29 de maio de 2012 22:15, Alexei Znamensky <<a href="mailto:russoz@gmail.com">russoz@gmail.com</a>><br>
>> >> escreveu:<br>
>> >> > DAS IST VERBOTEN!!! ES FUNKTIONIERT NICHT!!!<br>
>> >> ><br>
>> >> > 51, zembre uba boa ideia<br>
>> >> ><br>
>> >> ><br>
>> >> > 2012/5/29 Leo Balter <<a href="mailto:leonardo.balter@gmail.com">leonardo.balter@gmail.com</a>><br>
>> >> >><br>
>> >> >> Isso é o que Hitler diria.<br>
>> >> >><br>
>> >> >> (50)<br>
>> >> >><br>
>> >> >> Enviado via iPhone<br>
>> >> >><br>
>> >> >> Em 29/05/2012, às 20:34, Gabriel Vieira <<a href="mailto:gabriel.vieira@gmail.com">gabriel.vieira@gmail.com</a>><br>
>> >> >> escreveu:<br>
>> >> >><br>
>> >> >> E pensar que uma desavença gratuita dessa pode levar a coisas muito<br>
>> >> >> maiores..<br>
>> >> >><br>
>> >> >> 2012/5/29 Nilson Santos Figueiredo Jr. <<a href="mailto:acid06@gmail.com">acid06@gmail.com</a>><br>
>> >> >>><br>
>> >> >>> 2012/5/29 Blabos de Blebe <<a href="mailto:blabos@gmail.com">blabos@gmail.com</a>>:<br>
>> >> >>> > O 50° tem que xingar alguém de nazista pra fechar com chave de<br>
>> >> >>> > ouro.<br>
>> >> >>><br>
>> >> >>> Pior que essa animosidade já virtualmente acabou com o clima de<br>
>> >> >>> discussões sadias em outras listas.<br>
>> >> >>> É uma pena... agressões gratuitas assim não levam a nada. :-\<br>
>> >> >>><br>
>> >> >>> -Nilson<br>
>> >> >>> _______________________________________________<br>
>> >> >>> Rio-pm mailing list<br>
>> >> >>> <a href="mailto:Rio-pm@pm.org">Rio-pm@pm.org</a><br>
>> >> >>> <a href="http://mail.pm.org/mailman/listinfo/rio-pm" target="_blank">http://mail.pm.org/mailman/listinfo/rio-pm</a><br>
>> >> >><br>
>> >> >><br>
>> >> >><br>
>> >> >><br>
>> >> >> --<br>
>> >> >> Gabriel Vieira<br>
>> >> >><br>
>> >> >> _______________________________________________<br>
>> >> >> Rio-pm mailing list<br>
>> >> >> <a href="mailto:Rio-pm@pm.org">Rio-pm@pm.org</a><br>
>> >> >> <a href="http://mail.pm.org/mailman/listinfo/rio-pm" target="_blank">http://mail.pm.org/mailman/listinfo/rio-pm</a><br>
>> >> >><br>
>> >> >><br>
>> >> >> _______________________________________________<br>
>> >> >> Rio-pm mailing list<br>
>> >> >> <a href="mailto:Rio-pm@pm.org">Rio-pm@pm.org</a><br>
>> >> >> <a href="http://mail.pm.org/mailman/listinfo/rio-pm" target="_blank">http://mail.pm.org/mailman/listinfo/rio-pm</a><br>
>> >> ><br>
>> >> ><br>
>> >> ><br>
>> >> ><br>
>> >> > --<br>
>> >> > Alexei "RUSSOZ" Znamensky | russoz EM gmail com | <a href="http://russoz.org" target="_blank">http://russoz.org</a><br>
>> >> > GPG fingerprint = 42AB E78C B83A AE31 7D27  1CF3 C66F B5C7 71CA 9F3C<br>
>> >> > <a href="http://www.flickr.com/photos/alexeiz" target="_blank">http://www.flickr.com/photos/alexeiz</a> | <a href="http://github.com/russoz" target="_blank">http://github.com/russoz</a><br>
>> >> > "I don't know... fly casual!" -- Han Solo<br>
>> >> ><br>
>> >> > _______________________________________________<br>
>> >> > Rio-pm mailing list<br>
>> >> > <a href="mailto:Rio-pm@pm.org">Rio-pm@pm.org</a><br>
>> >> > <a href="http://mail.pm.org/mailman/listinfo/rio-pm" target="_blank">http://mail.pm.org/mailman/listinfo/rio-pm</a><br>
>> >> _______________________________________________<br>
>> >> Rio-pm mailing list<br>
>> >> <a href="mailto:Rio-pm@pm.org">Rio-pm@pm.org</a><br>
>> >> <a href="http://mail.pm.org/mailman/listinfo/rio-pm" target="_blank">http://mail.pm.org/mailman/listinfo/rio-pm</a><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> > --<br>
>> > Gabriel Vieira<br>
>> ><br>
>> > _______________________________________________<br>
>> > Rio-pm mailing list<br>
>> > <a href="mailto:Rio-pm@pm.org">Rio-pm@pm.org</a><br>
>> > <a href="http://mail.pm.org/mailman/listinfo/rio-pm" target="_blank">http://mail.pm.org/mailman/listinfo/rio-pm</a><br>
>> _______________________________________________<br>
>> Rio-pm mailing list<br>
>> <a href="mailto:Rio-pm@pm.org">Rio-pm@pm.org</a><br>
>> <a href="http://mail.pm.org/mailman/listinfo/rio-pm" target="_blank">http://mail.pm.org/mailman/listinfo/rio-pm</a><br>
><br>
><br>
><br>
> _______________________________________________<br>
> Rio-pm mailing list<br>
> <a href="mailto:Rio-pm@pm.org">Rio-pm@pm.org</a><br>
> <a href="http://mail.pm.org/mailman/listinfo/rio-pm" target="_blank">http://mail.pm.org/mailman/listinfo/rio-pm</a><br>
_______________________________________________<br>
Rio-pm mailing list<br>
<a href="mailto:Rio-pm@pm.org">Rio-pm@pm.org</a><br>
<a href="http://mail.pm.org/mailman/listinfo/rio-pm" target="_blank">http://mail.pm.org/mailman/listinfo/rio-pm</a><br>
</div></div></blockquote></div><br></div>