problemas con export
Publicado por Vidal (13 intervenciones) el 11/04/2007 01:31:48
Salidos Foro!!!
Tengo la situacion con un ciclo while en donde quiero recuperar una variable que dentro del ciclo modifique. aqui tengo una pequeña reseña.
Lo que hago es sacar la cantidad de archivos creados en cada minuto ordenados por tiempo
con un while de la salida de un ls recorro cada uno de los archivos en done guardo un anterior (wordant) para irlos sumando cuando son iguales (word = wordant) y cuando son diferentes imprimir el contador de los archivos anteriores (cnt), el problema es que cuando quiero imprimir el ultimo sale del ciclo y ya no alcanza, el TOT es para derfinir el numero de archivos que quiero contar pero no entra por aqui ya que especifico un numero mayor a la cantidad de archivos en el directorio que quiero comprobar.
Si no es entendible el codigo preguntenme en que queda duda, por otro lado agradezco de antemano y quedo de ustedes para cualquier aclaracion o informacion
Saludos
en tmp guardo la hora de creacion del archivo, notaran que no paso por el primer registro ya que es la salida del total en un ls
ls -t -l $filtro | while read i
do
if [ $contador -ne 0 ]; then
tmp=`echo $i | cut -d" " -f8- | cut -c 1-5`
word=$tmp
# echo $word
if [ $contador -eq 1 ]; then
wordant=$word
fi
if [ "$word" = "$wordant" ]; then
cnt=`expr $cnt "+" 1`
else
echo "Total de archivos a las: => $wordant => $cnt => $word "
cnt=1 export cnt
wordant=$word export wordant
# export word
fi
fi
if [ $contador -eq $TOT ]; then
echo "Total de archivos a las: => $tmp => $cnt "
echo ""
break
fi
contador=`expr $contador "+" 1`
done
if [ $contador -lt $TOT ]; then
echo "Total de archivos a las: => $wordant => $cnt "
echo ""
fi
Tengo la situacion con un ciclo while en donde quiero recuperar una variable que dentro del ciclo modifique. aqui tengo una pequeña reseña.
Lo que hago es sacar la cantidad de archivos creados en cada minuto ordenados por tiempo
con un while de la salida de un ls recorro cada uno de los archivos en done guardo un anterior (wordant) para irlos sumando cuando son iguales (word = wordant) y cuando son diferentes imprimir el contador de los archivos anteriores (cnt), el problema es que cuando quiero imprimir el ultimo sale del ciclo y ya no alcanza, el TOT es para derfinir el numero de archivos que quiero contar pero no entra por aqui ya que especifico un numero mayor a la cantidad de archivos en el directorio que quiero comprobar.
Si no es entendible el codigo preguntenme en que queda duda, por otro lado agradezco de antemano y quedo de ustedes para cualquier aclaracion o informacion
Saludos
en tmp guardo la hora de creacion del archivo, notaran que no paso por el primer registro ya que es la salida del total en un ls
ls -t -l $filtro | while read i
do
if [ $contador -ne 0 ]; then
tmp=`echo $i | cut -d" " -f8- | cut -c 1-5`
word=$tmp
# echo $word
if [ $contador -eq 1 ]; then
wordant=$word
fi
if [ "$word" = "$wordant" ]; then
cnt=`expr $cnt "+" 1`
else
echo "Total de archivos a las: => $wordant => $cnt => $word "
cnt=1 export cnt
wordant=$word export wordant
# export word
fi
fi
if [ $contador -eq $TOT ]; then
echo "Total de archivos a las: => $tmp => $cnt "
echo ""
break
fi
contador=`expr $contador "+" 1`
done
if [ $contador -lt $TOT ]; then
echo "Total de archivos a las: => $wordant => $cnt "
echo ""
fi
Valora esta pregunta


0