जैसा कि mbiber ने कहा, sourceएक और फाइल। उदाहरण के लिए, आपकी कॉन्फ़िग फ़ाइल (कहना some.config) होगी:
var1=val1
var2=val2
और आपकी स्क्रिप्ट जैसी दिख सकती है:
#! /bin/bash
# Optionally, set default values
# var1="default value for var1"
# var1="default value for var2"
. /path/to/some.config
echo "$var1" "$var2"
/etc/defaultआमतौर पर कई फाइलें एक समान तरीके से अन्य शेल स्क्रिप्ट के लिए कॉन्फ़िगरेशन फ़ाइलों के रूप में काम करती हैं। यहाँ पोस्ट से एक बहुत ही आम उदाहरण है /etc/default/grub। यह फ़ाइल GRUB के लिए कॉन्फ़िगरेशन विकल्प सेट करने के लिए उपयोग की जाती है, क्योंकि grub-mkconfigयह एक शेल स्क्रिप्ट है जो इसे स्रोत बनाती है:
sysconfdir="/etc"
#…
if test -f ${sysconfdir}/default/grub ; then
. ${sysconfdir}/default/grub
fi
यदि आपको वास्तव में फॉर्म के विन्यास की प्रक्रिया करनी चाहिए:
var1 some value 1
var2 some value 2
तब आप कुछ ऐसा कर सकते थे:
while read var value
do
export "$var"="$value"
done < /path/to/some.config
(आप भी ऐसा कुछ कर सकते हैं eval "$var=$value", लेकिन यह स्क्रिप्ट को सोर्स करने की तुलना में जोखिम भरा है। आप अनजाने में एक खट्टा फ़ाइल की तुलना में अधिक आसानी से तोड़ सकते हैं।)