• Publicidad

Select de BD a fichero de texto+control de tiempo+conex RSH

Todo acerca de las bases de datos que existen: SQL, MySQL, Oracle, Postgres, CSV, etc.

Select de BD a fichero de texto+control de tiempo+conex RSH

Notapor mjimenez » 2009-02-12 22:20 @972

Hola estoy intentando controlar a través de una select que me llega a una tabla la forma de leer el último fetch de mi select y colocarla en un fichero de texto.

Esto es lo que estoy haciendo:

En la query:
Sintáxis: [ Descargar ] [ Ocultar ]
Using sql Syntax Highlighting
SELECT id,text, node, ttime FROM eventos WHERE lower(text) LIKE '%mialarma%' ORDER BY ttime DESC LIMIT 1;
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4


Me devuelve: ID, mialarma texto, ttime

1. Debería añadir el fetch a un fichero de texto...
@file


2.Debo comprobar que el último evento sea distinto del anterior almacenado en el fichero de log alarma de ttime 1122 nueva en el tiempo de la siguiente generada 1123...
La alarma llegará cada 5 minutos.
Si no llegara ninguna alarma hago una llamada remota RSH a un servidor para ejecutar un comando. Esperaría otros 5 minutos para ver si me siguen llegando alarmas (para no crear un bucle infinito).

¿Cómo puedo hacer esto? Lo que tengo no me está dando resultado (he consultado muchos libros y no soy capaz de realizarlo)

Agradecería cualquier tipo de colaboración.
¡Gracias!
mjimenez
Perlero nuevo
Perlero nuevo
 
Mensajes: 15
Registrado: 2008-12-12 10:01 @459

Publicidad

Notapor mjimenez » 2009-02-12 22:22 @973

Conexion RSH...

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
use Net::Rsh;

  $a=Net::Rsh->new();

  $host="10.30.100.20";
  $local_user="root";
  $remote_user="root";
  $cmd="ls -ltr/home/$user";

  @c=$a->rsh($host,$local_user,$remote_user,$cmd);

  print @c;
Coloreado en 0.003 segundos, usando GeSHi 1.0.8.4


Código: Seleccionar todo
Rsh protocol requires that the program be run as root or that the program be setuid to root
mjimenez
Perlero nuevo
Perlero nuevo
 
Mensajes: 15
Registrado: 2008-12-12 10:01 @459

Notapor mjimenez » 2009-02-12 22:23 @974

Grabar contenido en un archivo:

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
open(FH,"filename");
@stuff = <FH>;
close(FH);
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4


¿¿Está bien??
mjimenez
Perlero nuevo
Perlero nuevo
 
Mensajes: 15
Registrado: 2008-12-12 10:01 @459

Notapor mjimenez » 2009-02-12 22:25 @975

Aunque también encontré este pequeño ejemplo de código para grabar un fichero en una máquina remota con remotecopy rcp:

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
use Net::Rsh;

$rsh_connection->rsh($_,$username,$username,$command);
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4


Código: Seleccionar todo
Quick program to rcp files to other hosts.
Makes backup of old file first then copies across.


Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
#!/bin/perl

$testigo="testigo.txt";
$destino="destino.txt";
$dir="/opt/home/user";
$rcp="/bin/rcp";
$rsh="/bin/rsh";

host1="10.30.100.20";
host2="10.30.100.30";
host3="10.30.100.40";

@hosts = (host1,host2,host3);
foreach $host(@hosts)
{
 `$rsh $host cp $dir/$testigo $dir/$destino`;
 `$rcp $testigo $host:$dir`;
 print "$rcp $testigo $host:$dir\n";
}
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4


Pero no me está funcionando tampoco... :(
mjimenez
Perlero nuevo
Perlero nuevo
 
Mensajes: 15
Registrado: 2008-12-12 10:01 @459

Notapor explorer » 2009-02-13 04:49 @242

mjimenez escribiste:Grabar contenido en un archivo:

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
open(FH,"filename");
@stuff = <FH>;
close(FH);
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4


¿¿Está bien??
Ahí estás leyendo el contenido del fichero, no grabándolo.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Notapor mjimenez » 2009-02-13 05:39 @277

Hola explorer, bien, para grabarlo usaría:

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
open(FH,"filename");
@stuff = <FH>;
print FH $new_stuff;
close(FH);
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4
mjimenez
Perlero nuevo
Perlero nuevo
 
Mensajes: 15
Registrado: 2008-12-12 10:01 @459

Notapor mjimenez » 2009-02-13 05:40 @277

Edito:

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
open(FH,">filename");
@stuff = <FH>;
print FH $new_stuff;
close(FH);
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4
mjimenez
Perlero nuevo
Perlero nuevo
 
Mensajes: 15
Registrado: 2008-12-12 10:01 @459

Notapor explorer » 2009-02-13 05:53 @287

Recuerda que puedes editar tus propios mensajes, con el botón que hay a la derecha, en cada mensaje.

Si, por lo que sospecho, solo quieres cambiar una línea del fichero de texto, te recomiendo usar Tie::File.

¿Qué diferencia hay entre @stuff y @new_stuff? ¿Son muy grandes las diferencias?
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España


Volver a Bases de datos

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 0 invitados

cron