Script Corre con otro usuario y con el mío no. ¿Serán las variables de entorno?

Iniciado por IraisGossow, 28 Abril 2015, 18:41 PM

0 Miembros y 1 Visitante están viendo este tema.

IraisGossow

Estoy haciendo un script que debe validar que tres archivos no estén vacíos (es decir, en ceros), pero no logro que me tome bien los archivos. El problema es que son variables, utilizan un nombre, el prefijo AMA y un número que varía.

Corregí las lineas de la asignación de variables y en la linea donde debería validar, sin importar el tamaño de archivo que le pase, no hace la validación.

Si le pongo estos archivos:

-rw-r--r-- 1 ij cdrama    160 Apr 29 09:28 datAMA570.bin
-rw-r--r-- 1 ij cdrama    160 Apr 29 09:28 colaAMA570
-rw-r--r-- 1 ij cdrama      0 Apr 29 09:42 hdrAMA407

Me devuelve esto:

El cuerpo  de la cinta esta vacio, la cinta no debe enviarse
La cola de La cinta tiene datos
La cabecera de La cinta tiene datos


Cuando debería devolver que el cuerpo y la cola tienen datos y la cabecera no.


Agradeceré mucho la ayuda
Código (bash) [Seleccionar]

#!/bin/bash
#
#    valida_cinta.sh
#
#
#    Shell para validar que cualquiera de los tres fragmentos de cinta contengan datos.
#    Version : 1.0
#    Author  : Area de Bases de datos
#
#    04/05/2015
valida_cinta()
{
        CINTA=$(find "$(pwd)" -type f -name datAMA*.bin)
        COLA=$(find "$(pwd)" -type f -name colaAMA*)
        HEADER=$(find "$(pwd)" -type f -name hdrAMA*)

        if [ -s "$CINTA" ]; then
        echo  -e "\e[00;32mEl cuerpo de La cinta tiene datos\e[00m"
        else
        echo -e "\e[01;31mEl cuerpo de la cinta esta vacio, la cinta no debe enviarse\e[00m"
        fi

        if [ -s "$COLA" ]; then
        echo  -e "\e[00;32mLa cola de La cinta tiene datos\e[00m"
        else
        echo -e "\e[01;31mLa cola de la cinta esta vacia, la cinta no debe enviarse\e[00m"
        fi

        if [ -s "$HEADER" ]; then
        echo  -e "\e[00;32mLa cabecera de La cinta tiene datos\e[00m"
        else
        echo -e "\e[01;31mLa cabecera de la cinta esta vacia, la cinta no debe enviarse\e[00m"
        fi
}
valida_cinta




Otra persona lo corrió en el mismo ambiente pero con otro usuario y le funcionó bien,
¿Serán las variables de entorno?

Eleкtro

Bienvenido al foro.

Lee las reglas antes de formular una pregunta, para empezar, debes utilizar las etiquetas GeShi al publicar código.

Saludos








IraisGossow

#2
Pregunta re-planteada