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”`


Share on Facebook

Te puede interesar también...