Hola. Tengo un problema con el resultado final de mi código:
Using perl Syntax Highlighting
#!/usr/bin/perl
use strict;
use warnings;
use utf8;
use locale;
use open OUT => ':locale';
use Net::SSH::Expect;
my $ssh = 'Net::SSH::Expect'->new(
host => 'mihost',
password => 'contrasena',
user => 'usuario',
port => 23,
raw_pty => 1
);
my $login_output = $ssh->login();
if ( $login_output !~ /Welcome/ ) {
die "Login has failed. Login output was $login_output";
}
$ssh->exec("stty raw -iutf8");
$ssh->exec("stty raw -echo");
print $ssh->peek(0);
$ssh->eat( $ssh->peek(0) );
my $su = $ssh->exec("su postgres");
# print "$su\n";
my $psql = $ssh->exec("psql -d BASEDATOS");
# print "$psql\n";
my $select = $ssh->exec('select * from pedidos where id_pedido < 10;');
my @resultado = split /\n/, $select;
my ( $campo, $registro ) = ( $resultado[0], $resultado[1] );
my @fields = split /\|/, $campo;
print "$_\t" for @fields;
$ssh->close;
Coloreado en 0.003 segundos, usando
GeSHi 1.0.8.4
Este código imprime correctamente en la consola de Ubuntu, pero al querer guardar en un archivo, haciendo
$ perl codigo.pl > pedidos.txt, me imprime unos caracteres extraños:
Saludos y gracias.