export
वर्तमान प्रक्रिया के बच्चों को निर्यात, डिफ़ॉल्ट रूप से वे निर्यात नहीं किए जाते हैं। उदाहरण के लिए:
$ foo=bar
$ echo "$foo"
bar
$ bash -c 'echo "$foo"'
$ export foo
$ bash -c 'echo "$foo"'
bar
set
दूसरी ओर, शेल विशेषताओं को सेट करता है, उदाहरण के लिए, स्थितीय पैरामीटर।
$ set foo=baz
$ echo "$1"
foo=baz
ध्यान दें कि baz
यह असाइन नहीं किया गया है foo
, यह बस एक शाब्दिक स्थिति पैरामीटर बन जाता है। कई अन्य चीजें set
कर सकते हैं (ज्यादातर शेल विकल्प), देखें help set
।
मुद्रण के लिए, export
बिना किसी तर्क के, शेल के वातावरण में सभी चर प्रिंट करता है। set
उन चर को भी प्रिंट करता है जो निर्यात नहीं किए जाते हैं। यह कुछ अन्य वस्तुओं को भी निर्यात कर सकता है (हालांकि आपको ध्यान देना चाहिए कि यह पोर्टेबल नहीं है), देखें help export
।