Mis saludos;
usando como base de conocimiento otro script distribuido en la lista hace un
tiempo creé uno para ver si descargo las actualizaciones del antivirus
segurmatica desde un sitio de nuestra institución.
Este es el script:
#!/bin/sh
DIR_TEMP="/root/tmp/segurmatica/"
URL="ftp://ftp.onat.gob.cu/Antivirus/SegAV/updates/"
TRAZAS="/var/log/update-segurmatica.log"
DESTINO="/var/ftp/pub/antivirus/actualizaciones/segurmatica"
rm -rf $DIR_TEMP
mkdir $DIR_TEMP
wget --no-proxy $URL -P $DIR_TEMP;
UPDATE_NAME=`cat /root/tmp/segurmatica/index.html | grep `date +%-d%-m%Y --
date='last day'` | cut -d '"' -f 2`
wget --no-proxy --recursive --no-host-directories --cut-dirs=3 -o $TRAZAS -P
$DIR_TEMP $UPDATE_NAME
rm -rf $DESTINO/*
cp -f $DIR_TEMP/* $DESTINO
exit 0
No me trabaja, pues la línea que dice:
UPDATE_NAME=`cat /root/tmp/segurmatica/index.html | grep `date +%-d%-m%Y --
date='last day'` | cut -d '"' -f 2`
me está dando problema a la hora de ejecutarse; pero si ejecutas esa línea de
comandos en consola, sí lo hace bien, es decir hay algún caracter que tengo
que ponerle a esa línea dentro del script para que no se pierda que en la
línea de comando no es necesario. ¿cual será?
El error que me devuelve la línea de comando para esa línea en el script es:
./segurmatica.sh: command substitution: línea 13: error sintáctico cerca del
elemento inesperado `|'
./segurmatica.sh: command substitution: línea 13: ` | cut -d '"' -f 2'
Modo de empleo: grep [OPCIÓN]... PATRÓN [FICHERO]...
Pruebe 'grep --help' para más información.
./segurmatica.sh: línea 13: +%-d%-m%Y: no se encontró la orden
--
Rommel Rodriguez Toirac
rommel.rodriguez(a)gtm.onat.gob.cu
Teléfono: 21327444 ext 120