[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [OT] Problema raro, raro... en shell script



On 10/09/13 18:17, Santiago López Denazis wrote:
On 09/10/2013 01:16 PM, Ricardo wrote:
El 10/09/13 13:04, Santiago López Denazis escribió:
On 09/10/2013 01:00 PM, Alfonso Camacho wrote:
Saludos:


    Entonces el problema lo tienes en el if anterior, que es el que
decide
si $HOSTNETAPP tendrá contenido o no. si está vacío, naturalmente el
for
no tendrá en qué iterar.

for MULTIHOSTSNETAPP in $HOSTSNETAPP ; do
echo "primer loop"
          for MULTIVOLNETAPP in $VOLCONF ; do
          echo "segundo loop"
                  $STORAGENETAPPBIN -H $MULTIHOSTSNETAPP -w
$WARN_LEVEL -c
                  $CRIT_LEVEL -v $MULTIVOLNETAPP | xargs echo
                  $MULTIHOSTSNETAPP :>>  $TMPBASE/netapp.txt | echo
"OK. Ha
                  rulado"
          done
done


Tiene lógica lo que comentas, lo que me extraña es que si ese mismo
bloque de script (el if, el for y los sed's siguientes) lo ejecuto en
primer lugar o los coloco en un script a parte funciona correctamente.
    Es fácil, si ves el 'echo "OK. Fichero de configuracion
'hosts-netapp_$DATE.conf' encontrado"', entonces el for no funcionará.

Para que te funcione correctamente el script (sobre todo si lo vas a
incluir en el cron) debes incluir el path absoluto de todos los comandos
y archivos/directorios que utilices.
No he mirado con atencion si el script contiene errores de sintaxis o
logica, pero salta a la vista que el comando echo, lo has puesto sin su
path apropiado, esto es solo un ejemplo.



   `echo` es un builtin de bash, no necesitas indicar la ruta.

Pero hay otros (cat, cut, xargs...) que no. En ese caso no estoy seguro de si seria preciso hacer lo que comenta Ricardo caso de ejecutarlo desde cron.

Salut,
jors


Reply to: