Como dijo mbiber, source
otro archivo. Por ejemplo, su archivo de configuración (digamos some.config
) sería:
var1=val1
var2=val2
Y tu guión podría verse así:
#! /bin/bash
# Optionally, set default values
# var1="default value for var1"
# var1="default value for var2"
. /path/to/some.config
echo "$var1" "$var2"
Los muchos archivos /etc/default
generalmente sirven como archivos de configuración para otros scripts de shell de manera similar. Un ejemplo muy común de publicaciones aquí es /etc/default/grub
. Este archivo se utiliza para establecer las opciones de configuración de GRUB, ya que grub-mkconfig
es un script de shell que lo genera:
sysconfdir="/etc"
#…
if test -f ${sysconfdir}/default/grub ; then
. ${sysconfdir}/default/grub
fi
Si realmente debe procesar la configuración del formulario:
var1 some value 1
var2 some value 2
Entonces podrías hacer algo como:
while read var value
do
export "$var"="$value"
done < /path/to/some.config
(También podría hacer algo como eval "$var=$value"
, pero eso es más riesgoso que obtener un script. Inadvertidamente podría romperlo más fácilmente que un archivo de origen).