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ดู