set -a
. ./tmp.txt
set +a
set -aवेरिएबल्स को अब से परिभाषित होने के कारण स्वचालित रूप से निर्यात किया जाता है। यह किसी भी बॉर्न-जैसे शेल में उपलब्ध है। कमांड के .लिए मानक और बॉर्न नाम है, sourceइसलिए मैं इसे पोर्टेबिलिटी के लिए पसंद करता हूं ( sourceआता है cshऔर अब सहित अधिकांश आधुनिक बॉर्न जैसे गोले में उपलब्ध bashहै) (कभी-कभी थोड़ा अलग व्यवहार के साथ)।
POSIX गोले में, आप set -o allexportइसे लिखने के set +o allexportलिए ( परेशान करने के लिए) एक अधिक वर्णनात्मक वैकल्पिक तरीके के रूप में भी उपयोग कर सकते हैं ।
¹ में bash, सावधान रहें कि यह घोषित सभी कार्यों का कारण बनता है जबकि allexportपर्यावरण को निर्यात किया जाना है (जैसा BASH_FUNC_myfunction%%कि पर्यावरण चर जो तब bashउस वातावरण में चलने वाले सभी गोले द्वारा आयात किया जाता है, यहां तक कि जब भी चल रहा हो sh)।