root/scripts/ldap/genexpal_profes.sh @ 554
535 | adminies.v | #!/bin/sh
|
|
# Tiene de entrada un fichero de profesores descargado de Rayuela. Elimina de ?l los
|
|||
# profesores ya dados de alta en Rayuela, de manera que quedan solamente los nuevos.
|
|||
# Este script debe estar en el mismo directorio que el archivo .xml de exportacion
|
|||
# de profes de Rayuela mas reciente (bueno, cualquiera vale, pero lo suyo es tener
|
|||
# los profes al dia).
|
|||
# Funcionamiento : genexpal_profes.sh Exportacion_Datos_Profes_Mas_Reciente.xml
|
|||
if [ -f ./Profes_Nuevos.xml ]; then
|
|||
rm -f ./Profes_Nuevos.xml
|
|||
fi
|
|||
clear
|
|||
if [ $# -lt 1 ]; then
|
|||
echo
|
|||
echo Funcionamiento : genexpal_profes.sh Exportacion_Datos_Profes_Mas_Reciente.xml
|
|||
ls -lh
|
|||
exit 1
|
|||
fi
|
|||
if [ ! -f $1 ]; then
|
|||
echo
|
|||
echo Funcionamiento : genexpal_profes.sh Exportacion_Datos_Profes_Mas_Reciente.xml
|
|||
echo Y ademas tiene que existir $1.
|
|||
ls -lh
|
|||
exit 1
|
|||
fi
|
|||
# Sacamos los nie para no hacer grep sobre un fichero tan gordo todo el tiempo
|
|||
ldapsearch -xLLL -h ldap -b "ou=People,dc=instituto,dc=extremadura,dc=es" homeDirectory employeeNumber | tr '\n' ' ' | sed 's/dc=es/dc=es\n/g' | grep profesor | cut -d" " -f5 | grep -v "dn:" > dnis
|
|||
# Estas tonter?as son para el porcentaje
|
|||
total_lineas=`wc -l ./$1 | cut -d" " -f1`
|
|||
lineas=1
|
|||
# Variable de guarda, para saber cu?ndo copiar
|
|||
copiar=si
|
|||
clear
|
|||
echo Empezamos, esto va a tardar un ratillo...
|
|||
while [ $lineas -le $total_lineas ]
|
|||
do
|
|||
linea=`head -$lineas ./$1 | tail -1`
|
|||
etiqueta=`echo $linea | tr '<' '>' | cut -d">" -f2`
|
|||
tpc=`expr $lineas \* 100 / $total_lineas`
|
|||
echo -n "Procesando l?nea $lineas...$tpc% completado..."
|
|||
echo -ne "\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b"
|
|||
lineas=`expr $lineas + 1`
|
|||
if [ "$etiqueta" = "dni" ]; then
|
|||
valor_dni=`echo $linea | tr '<' '>' | cut -d">" -f3`
|
|||
if [ "`grep -c "$valor_dni" dnis`" != "0" ]; then
|
|||
copiar=no
|
|||
else
|
|||
copiar=si
|
|||
echo "<profesor>" >> Profes_Nuevos.xml
|
|||
fi
|
|||
fi
|
|||
if [ "$copiar" = "si" -a "$etiqueta" != "profesor" ]; then
|
|||
echo "$linea" >> Profes_Nuevos.xml
|
|||
fi
|
|||
if [ "$copiar" = "no" -a "$etiqueta" = "/profesor" ]; then
|
|||
copiar=si
|
|||
fi
|
|||
done
|
|||
rm -f dnis
|
|||
echo
|
|||
echo Exportacion generada : Profes_Nuevos.xml
|
|||
echo Contiene `grep -c "<profesor>" Profes_Nuevos.xml` nuevos profes para incluir.
|