exportekspor ke anak-anak dari proses saat ini, secara default mereka tidak diekspor. Sebagai contoh:
$ foo=bar
$ echo "$foo"
bar
$ bash -c 'echo "$foo"'
$ export foo
$ bash -c 'echo "$foo"'
bar
set, di sisi lain, menetapkan atribut shell, misalnya, parameter posisi.
$ set foo=baz
$ echo "$1"
foo=baz
Catatan yang baztidak ditugaskan foo, itu hanya menjadi parameter posisi literal. Ada banyak hal lain yang setbisa dilakukan (kebanyakan opsi shell), lihat help set.
Sedangkan untuk mencetak, exportdipanggil tanpa argumen mencetak semua variabel di lingkungan shell. setjuga mencetak variabel yang tidak diekspor. Itu juga dapat mengekspor beberapa objek lain (walaupun Anda harus perhatikan bahwa ini bukan portable), lihat help export.