Hola, tengo un problema que, la verdad, no sé cómo resolverlo.
Tengo un script que lanza en una base de datos PostgreSQL una función que da las siguientes salidas:
01: Fichero no encontrado :/data/interfaces/salida/
o
00: El proceso ha finalizado Ok
Dependiendo de un código u otro, pues tengo que hacer una serie de cosas.
En un principio, estos códigos los saco con la siguiente subrutina:
my @r_tpfr_descargavisitas = &consultabbdd ($nombrebbdd,$dbhost,$dbuser,$dbpass,$consulta);
El resultado lo almaceno en un array de la siguiente forma:
my @cod_salida = split(":",$r_tpfr_descargavisitas[0]);
(Troceo la salida diviéndolo en dos con los puntos que vienen a continuación)
Entonces creo:
$kk = $cod_salida[0];
(Aquí se supone que almaceno el dato, o 00 o 01, en la variable $kk)
Ahora si hago un if() para tratar la variable:
my $opcion = 0;
if ($kk="00") {
$opcion = 1}
else {
$opcion =2
}
print "$opcion\n";
Si ejecuto el script:
devolviendome el código:
01: Fichero no encontrado :/data/interfaces/salida/
./script.pl
01 -> Codigo Spliteado 01
1 -> $opcion = 1.
devolviendome el código:
00: El proceso ha finalizado Ok
00 - Codigo spliteado 00
1 -> $opcion = 1
Creo que el problema es que no estoy troceando bien el código salida por lo que no solamente almaceno un 00 o un 01.
¿Alguien me podría dar alguna sugerencia?
Gracias