Una de scripts. Irá haciendo entradas sobre scripts, unas introductorias y otras más avanzadas. Hoy vamos a ver cómo hacer que nuestros scripts puedan configurar sus variables desde ficheros externos.
Ésto es especialmente útil cuando actualizamos nuestros scripts en distintas máquinas y no queremos alterar la configuración de cada uno.
Una práctica (extendida, pero no adecuada) Era hacer algo así:
copy.sh
#!/bin/bash
ruta_origen=/home/juanjo
ruta_destino=/mnt
function copiar{
cp -vr $ruta_origen $ruta_destino
}
Con lo que si cambiamos el script de ordenador, puede que /home/junajo no exista. Vamos a hacerlo bien. Crearos un fichero de propiedades, por ejemplo
copy.sh.properties
Y dentro colocad:
# Fichero de Propiedades de copy.sh
# propiedad=valor
origen=/home/juanjo
destino=/mnt
Ahora, en el fichero copy.sh añadid la funcion propiedad:
#!/bin/bash
function propiedad {
if test -r $0.properties
then
cat $0.properties | grep -v "#" |grep -i "$1" | cut -d "=" -f 2
else
echo "ERROR: Fichero de Propiedades no encontrado o no legible"
echo "Se sale del script."
exit 0
fi
}
ruta_origen=$(propiedad origen)
ruta_destino=$(propiedad destino)
function copiar{
cp -vr $ruta_origen $ruta_destino
}
De ésta forma, podemos cambiar los scripts conservando las configuraciones de cada equipo. Dejo para otro post (de scripts básicos) la explicación de cada línea.
A cuidarse!
Suscribirse a:
Enviar comentarios (Atom)
No hay comentarios:
Publicar un comentario