[SP-pm] Dúvidas com o módulo File::Find

Renato Santos renato.cron at gmail.com
Sun Sep 26 07:40:34 PDT 2010


Não pode criptografar tudo num tar?


2010/9/26 thiago glauco <thiagoglauco at ticursos.net>

> Melhor:
>
> if (not $_ eq "."){
> say $_;
>
> $gpg->decrypt(
> #ciphertext => "$_.gpg",
> ciphertext => "/home/thiago/teste_cripto/$_",
> output => "/home/thiago/teste_cripto/$_.txt",
> symmetric => 1,
> passphrase => $secret
> );
> }
>
> funcionou no meu fedora.
> abs.
>
> Marcio Ferreira wrote:
>
>> Na Documentação diz haver um parâmetro( o " |untaint_skip|" ) que faz um
>> skip do diretório, ou se preferir há uma extensão desse módulo que permiti
>> vários tipos de controle, File::Find::Closures -
>> http://search.cpan.org/~bdfoy/File-Find-Closures-1.09/lib/Closures.pm <
>> http://search.cpan.org/%7Ebdfoy/File-Find-Closures-1.09/lib/Closures.pm>
>>
>>
>> Quanto a descriptografia, é melhor perguntar como ela será realizada ?
>> Talvez seja melhor você passar o(s) arquivo(s) como parâmetro, ou fazer uma
>> consulta ao banco de dados, JSON, enfim.
>>
>> Nunca testei esse módulo, mas se isso não resolver posta novamente que
>> posso testar.
>>
>> []s,
>>
>> @webgenes
>> Marcio Ferreira
>>
>> " Perl  lives as the 'toolbox for Unix' "
>>
>>
>>
>> Em 26 de setembro de 2010 01:08, "Flávio R. Lopes" <
>> flavio.lopes at links.inf.br <mailto:flavio.lopes at links.inf.br>> escreveu:
>>
>>
>>    Olá pessoal.
>>    Na verdade estou "requentando" uma dúvida minha sobre um programa
>>    que comecei e não terminei.
>>
>>    Estou tentando fazer 2 programas que tratam de criptografar e
>>    descriptografar dados recursivamente dentro de uma árvore de
>>    diretórios.
>>
>>    O código deles está aqui: http://gist.github.com/597573
>>
>>    No programa "criptografa.pl <http://criptografa.pl>" ele já
>>
>>    consegue criptografar dados dos diretórios, mas está acontecendo
>>    um problema que ele criptografa o nome dos diretórios inclusive os
>>    ocultos. Supondo que eu aponte para um determinado diretório e que
>>    dentro dele eu tenha um diretório chamado "dir1" e mais dois
>>    arquivos chamados "arquivo1" e "arquivo2" ao rodar o programa e se
>>    eu der o comando "ls -al" dentro do tal diretório me aparece o
>>    seguinte:
>>
>>
>>    dir1
>>    arquivo1
>>    arquivo1.gpg
>>    arquivo2
>>    arquivo2.gpg
>>    dir1.gpg --> aqui criptograga o nome do diretorio
>>    ..gpg -- > e aqui e no debaixo os diretórios ocultos
>>    ..gpg.gpg
>>
>>    Como faço para o programa "pegar" somente os arquivos para
>>    criptografar, ignorando os diretórios ?
>>
>>
>>    Já o programa "descriptografa.pl <http://descriptografa.pl>"
>>
>>    ocorre um erro que não consegui descobrir e os arquivos não são
>>    descriptografados. Acredito que eu esteja errando alguma coisa ao
>>    utilizar o módulo File:Find na passagem de parâmetros.
>>    A mensagem de erro é esta:
>>
>>    Protocol error: expected NEED_PASSPHRASE.* got NODATA
>>     at /usr/local/lib/perl5/site_perl/5.12.1/GnuPG.pm line 154
>>       GnuPG::abort_gnupg('GnuPG=HASH(0xf99b48)', 'Protocol error:
>>    expected NEED_PASSPHRASE.* got NODATA\x{a}') called at
>>    /usr/local/lib/perl5/site_perl/5.12.1/GnuPG.pm line 345
>>       GnuPG::send_passphrase('GnuPG=HASH(0xf99b48)', 123456) called
>>    at /usr/local/lib/perl5/site_perl/5.12.1/GnuPG.pm line 740
>>       GnuPG::decrypt_postwrite('GnuPG=HASH(0xf99b48)', 'ciphertext',
>>    ., 'output', '..txt', 'symmetric', 1, 'passphrase', 123456, ...)
>>    called at /usr/local/lib/perl5/site_perl/5.12.1/GnuPG.pm line 725
>>       GnuPG::decrypt('GnuPG=HASH(0xf99b48)', 'ciphertext', .,
>>    'output', '..txt', 'symmetric', 1, 'passphrase', 123456, ...)
>>    called at /home/flavio/workspace/TESTE/decripto_teste.pl
>>    <http://decripto_teste.pl> line 34
>>
>>       main::busca() called at
>>    /usr/local/lib/perl5/5.12.1/File/Find.pm line 854
>>       File::Find::_find_dir('HASH(0xf99bd8)',
>>    '/home/flavio/teste_cripto', 3) called at
>>    /usr/local/lib/perl5/5.12.1/File/Find.pm line 722
>>       File::Find::_find_opt('HASH(0xf99bd8)',
>>    '/home/flavio/teste_cripto/') called at
>>    /usr/local/lib/perl5/5.12.1/File/Find.pm line 1297
>>       File::Find::find('CODE(0x11617a8)',
>>    '/home/flavio/teste_cripto/') called at
>>    /home/flavio/workspace/TESTE/decripto_teste.pl
>>    <http://decripto_teste.pl> line 18
>>
>>
>>
>>    Parece que ele não localiza a senha. Mas eu tentei inclusive
>>    colocar a senha dentro da sub eliminando a variável $secret. Ou
>>    seja, fez desta forma: passphrase => "123456"
>>
>>    O que está errado?
>>
>>    Abraço,
>>    Flávio
>>    _______________________________________________
>>    SaoPaulo-pm mailing list
>>    SaoPaulo-pm at pm.org <mailto:SaoPaulo-pm at pm.org>
>>
>>    http://mail.pm.org/mailman/listinfo/saopaulo-pm
>>
>>
>>
>> _______________________________________________
>> SaoPaulo-pm mailing list
>> SaoPaulo-pm at pm.org
>> http://mail.pm.org/mailman/listinfo/saopaulo-pm
>>
>
> _______________________________________________
> SaoPaulo-pm mailing list
> SaoPaulo-pm at pm.org
> http://mail.pm.org/mailman/listinfo/saopaulo-pm
>



-- 
Renato Santos
http://www.renatocron.com/blog/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.pm.org/pipermail/saopaulo-pm/attachments/20100926/81903f74/attachment.html>


More information about the SaoPaulo-pm mailing list