[SP-pm] printenv em perl?
Daniel de Oliveira Mantovani
daniel.oliveira.mantovani at gmail.com
Mon Jun 21 15:11:33 PDT 2010
2010/6/20 Thiago Glauco Sanchez <thiagoglauco em ticursos.net>:
> Te pago uma breja/choop no ES!!!
>
> Em 20/06/2010 19:11, Daniel de Oliveira Mantovani escreveu:
>>
>> Arghhh!! Esqueci de retirar um espaço,
>>
>> perl -E 'say for keys%main::'
>>
>> -1 :D
Estava muito grande,
perl -E 'say for keys%::'
-4 :P
>>
>> 2010/6/20 Daniel de Oliveira
>> Mantovani<daniel.oliveira.mantovani em gmail.com>:
>>
>>>
>>> perl -E 'say for keys %main::'
>>>
>>> 2010/6/20 Thiago Glauco Sanchez<thiagoglauco em ticursos.net>:
>>>
>>>>
>>>> Outch.. magoa mandar googar...
>>>>
>>>> perl -E 'map{ say } keys %main::'
>>>>
>>>> é isso???
>>>>
>>>> Diminui esse Mantovani!!!!
>>>>
>>>>
>>>> Em 20/06/2010 19:00, Thiago Glauco Sanchez escreveu:
>>>>
>>>>>
>>>>> Em 20/06/2010 18:52, Daniel de Oliveira Mantovani escreveu:
>>>>>
>>>>>>
>>>>>> ...
>>>>>>
>>>>>> Você quer hackear a tabela de símbolos...
>>>>>>
>>>>>> http://lmgtfy.com/?q=Perl+symbol+tables
>>>>>>
>>>>>>
>>>>>>
>>>>>> 2010/6/20 jimmy<jimmy.tty em gmail.com>:
>>>>>>
>>>>>>>
>>>>>>> On Sun, Jun 20, 2010 at 05:34:20PM -0300, Thiago Glauco Sanchez
>>>>>>> wrote:
>>>>>>>
>>>>>>>>
>>>>>>>> Em 20/06/2010 15:25, Nelson Ferraz escreveu:
>>>>>>>>
>>>>>>>>>
>>>>>>>>> Em 20 de junho de 2010 20:15, jimmy<jimmy.tty em gmail.com>
>>>>>>>>> escreveu:
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Saudações amigos,
>>>>>>>>>>
>>>>>>>>>> Ando procurando uma forma de fazer em perl algo parecido com o
>>>>>>>>>> comando
>>>>>>>>>> printenv do coreutils faz no shell
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Let me google that for you:
>>>>>>>>>
>>>>>>>>> http://lmgtfy.com/?q=printenv+perl
>>>>>>>>> _______________________________________________
>>>>>>>>> SaoPaulo-pm mailing list
>>>>>>>>> SaoPaulo-pm em pm.org
>>>>>>>>> http://mail.pm.org/mailman/listinfo/saopaulo-pm
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>> Você está procurando algo como:
>>>>>>>>
>>>>>>>> perl -M5.12.0 -e 'map { say "$_ => $ENV{$_}" } keys %ENV'
>>>>>>>>
>>>>>>>> ????
>>>>>>>>
>>>>>>>
>>>>>>> Não, no caso eu "desconheço" as variáveis e funções exportadas também
>>>>>>> porque estou usando um shell perl e fico fazendo testes com ele
>>>>>>> aberto,
>>>>>>> chega o momento que não sei que pacotes, variáveis e funções já tenho
>>>>>>> definidos no interpretador.
>>>>>>>
>>>>>>>
>>>>>
>>>>> Você quer saber quais as funções/módulos você carregou no seu name
>>>>> space?
>>>>>
>>>>>>>
>>>>>>> Se alguém já usou o builtin "set" do bash, ele mostra além das
>>>>>>> variáveis
>>>>>>> as funções correntes.
>>>>>>>
>>>>>>> tentando exemplificar com código:
>>>>>>>
>>>>>>>
>>>>>>> -----------------------------------------------------------------------
>>>>>>> #!/usr/bin/perl
>>>>>>>
>>>>>>> use strict;
>>>>>>> use warnings;
>>>>>>> use Data::Dumper;
>>>>>>>
>>>>>>> use Dumpvalue;
>>>>>>> my $dumper = Dumpvalue->new();
>>>>>>>
>>>>>>> sub _print {
>>>>>>> print(qq(sub\n));
>>>>>>> }
>>>>>>>
>>>>>>> our($STRING);
>>>>>>> $STRING = q(APENAS PARA TESTE);
>>>>>>>
>>>>>>> $dumper->dumpvars(q(:main));
>>>>>>>
>>>>>>> -----------------------------------------------------------------------
>>>>>>>
>>>>>>> obtenho como saída:
>>>>>>>
>>>>>>>
>>>>>>> -----------------------------------------------------------------------
>>>>>>>
>>>>>>> $/ = '
>>>>>>> '
>>>>>>> FileHandle(stderr) => fileno(2)
>>>>>>> %SIG = (
>>>>>>> 'ABRT' => undef
>>>>>>> 'ALRM' => undef
>>>>>>> 'BUS' => undef
>>>>>>> 'CHLD' => undef
>>>>>>> 'CLD' => undef
>>>>>>> 'CONT' => undef
>>>>>>> 'FPE' => 'IGNORE'
>>>>>>> 'HUP' => undef
>>>>>>> 'ILL' => undef
>>>>>>> 'INT' => undef
>>>>>>> 'IO' => undef
>>>>>>> 'IOT' => undef
>>>>>>> 'KILL' => undef
>>>>>>> 'NUM32' => undef
>>>>>>> 'NUM33' => undef
>>>>>>> 'NUM34' => undef
>>>>>>> 'NUM36' => undef
>>>>>>> 'NUM37' => undef
>>>>>>> 'NUM38' => undef
>>>>>>> 'NUM39' => undef
>>>>>>> 'NUM40' => undef
>>>>>>> 'NUM41' => undef
>>>>>>> 'NUM42' => undef
>>>>>>> 'NUM43' => undef
>>>>>>> 'NUM44' => undef
>>>>>>> 'NUM45' => undef
>>>>>>> 'NUM46' => undef
>>>>>>> 'NUM47' => undef
>>>>>>> 'NUM48' => undef
>>>>>>> 'NUM49' => undef
>>>>>>> 'NUM50' => undef
>>>>>>> 'NUM51' => undef
>>>>>>> 'NUM52' => undef
>>>>>>> 'NUM53' => undef
>>>>>>> 'NUM54' => undef
>>>>>>> 'NUM55' => undef
>>>>>>> 'NUM56' => undef
>>>>>>> 'NUM57' => undef
>>>>>>> 'NUM58' => undef
>>>>>>> 'NUM59' => undef
>>>>>>> 'NUM60' => undef
>>>>>>> 'NUM61' => undef
>>>>>>> 'NUM62' => undef
>>>>>>> 'NUM63' => undef
>>>>>>> 'PIPE' => undef
>>>>>>> 'POLL' => undef
>>>>>>> 'PROF' => undef
>>>>>>> 'PWR' => undef
>>>>>>> 'QUIT' => undef
>>>>>>> 'RTMAX' => undef
>>>>>>> 'RTMIN' => undef
>>>>>>> 'SEGV' => undef
>>>>>>> 'STKFLT' => undef
>>>>>>> 'STOP' => undef
>>>>>>> 'SYS' => undef
>>>>>>> 'TERM' => undef
>>>>>>> 'TRAP' => undef
>>>>>>> 'TSTP' => undef
>>>>>>> 'TTIN' => undef
>>>>>>> 'TTOU' => undef
>>>>>>> 'UNUSED' => undef
>>>>>>> 'URG' => undef
>>>>>>> 'USR1' => undef
>>>>>>> 'USR2' => undef
>>>>>>> 'VTALRM' => undef
>>>>>>> 'WINCH' => undef
>>>>>>> 'XCPU' => undef
>>>>>>> 'XFSZ' => undef
>>>>>>> '__WARN__' => undef
>>>>>>> )
>>>>>>> $" = ' '
>>>>>>> FileHandle(stdout) => fileno(1)
>>>>>>> $$ = 32174
>>>>>>> $^RE_TRIE_MAXBUF = 65536
>>>>>>> $! = ''
>>>>>>> $^X = '/usr/bin/perl5.12.1'
>>>>>>> @_ = (
>>>>>>> 0 ':main::'
>>>>>>> 1 0
>>>>>>> 2 '_'
>>>>>>> 3 *main::_
>>>>>>> )
>>>>>>> FileHandle(STDIN) => fileno(0)
>>>>>>> $^WARNING_BITS = "\c@\c@\c@\c@\c@\c@\c@\c@\c@\c@\c@\c@"
>>>>>>> FileHandle(stdin) => fileno(0)
>>>>>>> @INC = (
>>>>>>> 0 '/usr/lib/perl5/site_perl/5.12.1/i486-linux'
>>>>>>> 1 '/usr/lib/perl5/site_perl/5.12.1'
>>>>>>> 2 '/usr/lib/perl5/5.12.1/i486-linux'
>>>>>>> 3 '/usr/lib/perl5/5.12.1'
>>>>>>> 4 '/usr/lib/perl5/site_perl/5.8.7'
>>>>>>> 5 '/usr/lib/perl5/site_perl/5.8.8'
>>>>>>> 6 '/usr/lib/perl5/site_perl'
>>>>>>> 7 '.'
>>>>>>> )
>>>>>>> %INC = (
>>>>>>> 'Carp.pm' => '/usr/lib/perl5/5.12.1/Carp.pm'
>>>>>>> 'Data/Dumper.pm' =>
>>>>>>> '/usr/lib/perl5/5.12.1/i486-linux/Data/Dumper.pm'
>>>>>>> 'Dumpvalue.pm' => '/usr/lib/perl5/5.12.1/Dumpvalue.pm'
>>>>>>> 'Exporter.pm' => '/usr/lib/perl5/5.12.1/Exporter.pm'
>>>>>>> 'List/Util.pm' =>
>>>>>>> '/usr/lib/perl5/5.12.1/i486-linux/List/Util.pm'
>>>>>>> 'Scalar/Util.pm' =>
>>>>>>> '/usr/lib/perl5/5.12.1/i486-linux/Scalar/Util.pm'
>>>>>>> 'XSLoader.pm' => '/usr/lib/perl5/5.12.1/XSLoader.pm'
>>>>>>> 'bytes.pm' => '/usr/lib/perl5/5.12.1/bytes.pm'
>>>>>>> 'overload.pm' => '/usr/lib/perl5/5.12.1/overload.pm'
>>>>>>> 'strict.pm' => '/usr/lib/perl5/5.12.1/strict.pm'
>>>>>>> 'vars.pm' => '/usr/lib/perl5/5.12.1/vars.pm'
>>>>>>> 'warnings.pm' => '/usr/lib/perl5/5.12.1/warnings.pm'
>>>>>>> 'warnings/register.pm' =>
>>>>>>> '/usr/lib/perl5/5.12.1/warnings/register.pm'
>>>>>>> )
>>>>>>> $0 = 'perl.pl'
>>>>>>> $^H = 256
>>>>>>> $@ = ''
>>>>>>> FileHandle(STDOUT) => fileno(1)
>>>>>>> $] = 5.012001
>>>>>>> $^W = 0
>>>>>>> FileHandle(STDERR) => fileno(2)
>>>>>>>
>>>>>>> -----------------------------------------------------------------------
>>>>>>>
>>>>>>> mas a função "_print" que defini e as funções provenientes do
>>>>>>> Data:Dumper, não aparecem e era isso que eu estou tentando fazer,
>>>>>>> imprimir tudo o que está definido no interpretador naquele momento.
>>>>>>>
>>>>>>> Se o problema fosse as estruturas de dados, o Data::Dumper resolveria
>>>>>>> bem, mas nesse momento os dados são o que menos me interessam.
>>>>>>>
>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> Thiago Glauco Sanchez
>>>>>>>> Intrutor Perl e Redes
>>>>>>>> www.ticursos.net
>>>>>>>>
>>>>>>>> _______________________________________________
>>>>>>>>
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> SaoPaulo-pm mailing list
>>>>>>> SaoPaulo-pm em pm.org
>>>>>>> http://mail.pm.org/mailman/listinfo/saopaulo-pm
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>
>>>> --
>>>> Thiago Glauco Sanchez
>>>> Intrutor Perl e Redes
>>>> www.ticursos.net
>>>>
>>>> _______________________________________________
>>>> SaoPaulo-pm mailing list
>>>> SaoPaulo-pm em pm.org
>>>> http://mail.pm.org/mailman/listinfo/saopaulo-pm
>>>>
>>>>
>>>
>>>
>>> --
>>> http://www.danielmantovani.com
>>> "If you’ve never written anything thoughtful, then you’ve never had
>>> any difficult, important, or interesting thoughts. That’s the secret:
>>> people who don’t write, are people who don’t think."
>>>
>>>
>>
>>
>>
>
>
> --
> Thiago Glauco Sanchez
> Intrutor Perl e Redes
> www.ticursos.net
>
> _______________________________________________
> SaoPaulo-pm mailing list
> SaoPaulo-pm em pm.org
> http://mail.pm.org/mailman/listinfo/saopaulo-pm
>
--
http://www.danielmantovani.com
"If you’ve never written anything thoughtful, then you’ve never had
any difficult, important, or interesting thoughts. That’s the secret:
people who don’t write, are people who don’t think."
More information about the SaoPaulo-pm
mailing list