Borrar contenido de un listado capturandolo de otros

kazabe kazabe en gmail.com
Dom Jul 10 09:12:04 CLT 2005


Hola!

Estoy tratando de armar un script que me permita gestionar el
contenido de un listado con direcciones ip.

La cosa es:  tengo un archivo que se llama "final" en donde tengo
todas las direcciones ip de mi red, y varios archivos llamados "ips1",
"ips2", "ips3", cada una con segmentos de la red (por ejemplo
departamentos diferentes).

Lo que deseo hacer es cuando invoque el script (que se llama denegar)
de esta manera:

sh denegar ips1 ips2

se capture el contenido de los archivos "ips1" e "ips2" y esas
direcciones sean borradas del archivo "final".

Hasta ahora he logrado crear un archivo unico en el que se graban las
direcciones a borrar (este archivo se llama "borrados").
====================================================
#!/bin/sh
rm -f /tmp/reglas.$$
funcion_agrupar_ip() {
 echo "$1";
}
for grupo; do
if [ -s $grupo ]; then
while read ip; do
funcion_agrupar_ip $ip >> /tmp/reglas.$$
done < $grupo
fi
done
mv /tmp/reglas.$$ /home/kazabe/listados/borrados
====================================================

Lo que me tiene estancado es como llamar a ese archivo "borrados", y
hacer que las direcciones que el contenga sean eliminadas del archivo
llamado "final", en donde estan las ips que deseo autorizar para
navegar o lo que sea.  El caso es que en ese archivo "final", no
aparezca el contenido de "borrados".

Como puedo hacer esta ultima parte?

Gracias por su ayuda
-- 
"Imagination is more important than knowlege"
A.E.



Más información sobre la lista de distribución Linux