Perl en Español

  1. Home
  2. Tutoriales
  3. Foro
  4. Artículos
  5. Donativos
  6. Publicidad
 

Consulta sobre XML
Ir a página Anterior  1, 2, 3, 4
 
Publicar nuevo tema   Responder al tema    Foros de discusión -> Intermedio
Mensaje Vie Jun 13, 2008 5:11 pm
situ
Perlero Frecuente
Perlero Frecuente
Registrado: 09 Abr 2007
Mensajes: 143
Responder citando

Discúlpame, pero la verdad que no puedo hacerlo, sé que siempre digo lo mismo pero es la verdad.

Tengo esta función.

Perl:
elsif ( $n and $u) {

    for my $pc ( @{$info->{technology}{pc}} ) {
        next if $pc->{name} !~ /^$n$/;

        print "$pc->{name} => $pc->{url} ($pc->{ip})\n";

        for my $user ( @{$pc->{user}} ) {
            next if $user->{name} !~ /^$u$/;
            print "\t   $user->{name} : $user->{password}\n";
            exit ();
        }
    }
}


Ahora puedo buscar por nombre y usuario, igualmente me entrega lo mismo que antes.
Mensaje Vie Jun 13, 2008 8:12 pm
explorer
Moderador
Moderador
Registrado: 24 Jul 2005
Mensajes: 4143
Ubicación: Valladolid, España
Responder citando

Ya, pero las respuestas que encontrarás aquí son las correspondientes al foro Intermedio... quizás deberías haberlas puesto en el de Básico.

Tú repasa mi última contestación y tradúcela línea a línea a Perl.
Mensaje Sab Jun 14, 2008 3:49 pm
situ
Perlero Frecuente
Perlero Frecuente
Registrado: 09 Abr 2007
Mensajes: 143
Responder citando

Si tenes razón, voy a practicar un poco más Very Happy
Saludos.
Mensaje Jue Jun 19, 2008 4:46 pm
situ
Perlero Frecuente
Perlero Frecuente
Registrado: 09 Abr 2007
Mensajes: 143
Responder citando

Consulta,
¿Cómo puedo simplificar la función de "desencriptar"?

Perl:
## Desencripto la password
if ( $n and $u and $d ) {
    for my $pc ( @{$info->{technology}{pc}} ) {
        next if $pc->{name} !~ /^$n$/;
        for my $user ( @{$pc->{user}} ) {
            next if $user->{name} !~ /^$u$/;
            open  (my $PWD , "> $n.$u.pw.asc");
            print $PWD "$user->{password}\n";
            close ($PWD);
            print "- Ingresar password de la key gpg\n";
            system("gpg --no-options $n.$u.pw.asc");
            open my $FILE, '<', "$n.$u.pw" or die $!;
            my $lines = <$FILE>;
            close $FILE;
            for my $pc ( @{$info->{technology}{pc}} ) {
                next if $pc->{name} !~ /^$n$/;
                print "$pc->{name} => $pc->{url} ($pc->{ip})\n";
                for my $user ( @{$pc->{user}} ) {
                    next if $user->{name} !~ /^$u$/;
                    print "\t   $user->{name} : $lines\n";
                    system("rm -f $n.$u.pw");
                    exit ();
                }
            }
        }
    }
}


Lo que hace es buscar el host por nombre y usuario, luego guarda el contenido del password en un archivo para luego desencriptarlo.
Saludos.
Mensaje Sab Jun 21, 2008 9:24 am
explorer
Moderador
Moderador
Registrado: 24 Jul 2005
Mensajes: 4143
Ubicación: Valladolid, España
Responder citando

¿Por qué existe dos veces el bucle for my $pc()?
Mensaje Sab Jun 21, 2008 10:30 am
situ
Perlero Frecuente
Perlero Frecuente
Registrado: 09 Abr 2007
Mensajes: 143
Responder citando

No me di cuenta :p , ahí lo arreglé, gracias, igualmente como bien me comentabas en el post de "básico" voy a comenzar a probar el modulo Crypt::GPG.
Saludos y gracias
Publicar nuevo tema   Responder al tema    Foros de discusión -> Intermedio Todas las horas son GMT - 6 Horas
Ir a página Anterior  1, 2, 3, 4
Página 4 de 4



Powered by phpBB © 2001, 2005 phpBB Group