diff --git a/share/spack/setup-env.bash b/share/spack/setup-env.bash
index e22a259167257d5b152147f0298a9d1b08edc7cc..53c53dfee55992064e1e66031d7abb99ccf911cc 100755
--- a/share/spack/setup-env.bash
+++ b/share/spack/setup-env.bash
@@ -65,6 +65,10 @@ function spack {
     # Filter out use and unuse.  For any other commands, just run the
     # command.
     case $_spack_subcommand in
+        "cd")
+            cd $(spack stage -b "$@")
+            return
+            ;;
         "use") ;;
         "unuse") ;;
         *)