Script copia archivo en multiples directorios
Este script realiza los siguientes pasos, comprueba si existen los documentos de texto que almacenan los dominios dados de alta en la máquina así como los buzones de cada uno. Luego empieza a recorrer los directorios copiando dentro de cada uno el archivo .procmailrc y .qmail, una ve finalizado borra los TXT. Por lo tanto con él una tarea tan dura como la de seria reemplazar un archivo común en todos los buzones se haría en menos de un minuto, solamente haciendo la modificación en el archivo de muestra, como sería el escrito en el post Clamav+Procmail
#!/bin/bash
clear
hostname
d=`date`
echo “FECHA: $d”
`rm -rf “dominios.txt”`
`rm -rf “dominios1.txt”`
`rm -rf “cuentas.txt”`
`rm -rf “cuentas1.txt”`
for i in `ls -d /var/qmail/mailnames/*`
do
# if [ "$i" = "/var/qmail/mailnames/dominio" ]; then
`rm -rf “dominios.txt”`
echo $i >> “dominios.txt”
cat “dominios.txt” | sed ‘s/\/var\/qmail\/mailnames\///g’ > “dominios1.txt”
dominio=`cat “dominios1.txt”`
for x in `ls -d $i/*`
do
`rm -rf “cuentas.txt”`
echo $x >> “cuentas.txt”
cat “cuentas.txt” | sed ‘s/\/var\/qmail\/mailnames\/’$dominio’//g’ > “cuentas1.txt”
`rm -rf “cuentas.txt”`
cat “cuentas1.txt” | sed ‘s/\///g’ > “cuentas.txt”
cuenta=`cat “cuentas.txt”`
echo $dominio
echo $cuenta
sAguja=”$x/.qmail”
# if [ ! -f $sAguja ]; then
echo “COPIANDO -> $sAguja”
`cp -pRf “/correo/.qmail” $sAguja`
# fi
sAguja=”$x/.procmailrc”
sDestino=”$x/.procmailrcNew”
# if [ ! -f $sAguja ]; then
echo “COPIANDO: $sAguja”
`cp -pRf “/correo/.procmailrc” $sAguja`
echo “CAMBIANDO -> Dominio por: $dominio”
cat $sAguja | sed ‘s/dominio/’$dominio’/g’ > $sDestino
echo “CAMBIANDO -> Cuenta por: $cuenta”
cat $sDestino | sed ‘s/cuenta/’$cuenta’/g’ > $sAguja
`rm -rf $sDestino`
# fi
done
# fi
done
`rm -rf “dominios.txt”`
`rm -rf “dominios1.txt”`
`rm -rf “cuentas.txt”`
`rm -rf “cuentas1.txt”`
[...] cargar a mano en cada uno de los buzones que tenemos dados de alta en el servidor o utilizar un script para desplegar los cambios. Vea este [...]