Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

In Linux we can use "cd -" to enter the previous directory, like:

/home/user: cd /a

/a: cd -


The - means the latest previous directory.

share|improve this question

migrated from Dec 11 '09 at 6:21

This question came from our site for professional and enthusiast programmers.

You can use pushd and popd:

c:\> pushd c:\windows
c:\Windows> popd
share|improve this answer
you can use those on *nix systems too, and they're not limited to just "last directory". the windows versions also have some nifty sideeffects like auto-mounting network shares and such. – quack quixote Dec 11 '09 at 6:34
Yes, but don't forget the popd after you pushd'd an UNC path, otherwise the temporary share will linger around :-) – Joey Dec 11 '09 at 7:00

Windows command-line by itself, no...

But, if needed / interested, you might want to try something like Cygwin or Msys, which will allow you to use a Linux-shell on Windows.

Not sure it's really what you want, but it might solve some or your problems.

(The other solution being to just... use Linux ^^ )

share|improve this answer
+1 for "just use Linux". – Michael Aaron Safyan Dec 11 '09 at 6:12

Maybe you would be interested in this:

Of course, pushd/popd are great pair of commands, but it cannot switch back once you popped the previous out.

So I made one batch myself, which could maintain a directory history for jumping back, because I have to jump among many directories very often.

Here is the help:

cdx                 - display all saved path with leading id and name followed if any
cdx <path>          - save current path and jump to <path>
cdx :<n|name>       - jump to the Nth or named path in the saved list
cdx :               - jump to previous path
cdx <n>:<name>      - name the Nth path as <name>
cdx rm [:]<n|name>  - remove the Nth or named path from the list
cdx clear           - clear the list
cdx /help           - print out this help
cdx /?              - same as above

and examples

D:\>cdx "C:\Program Files"
C:\Program Files>cdx
[1] D:\

C:\Program Files>cdx d:\tmp
[1] D:\
[2] C:\Program Files

d:\tmp>cdx t:\UsrTmp
t:\UsrTmp>cdx .
[1] D:\
[2] C:\Program Files
[3] d:\tmp
[4] t:\UsrTmp

t:\UsrTmp>cdx :2
C:\Program Files>cdx
[1] D:\
[2] C:\Program Files
[3] d:\tmp
[4] t:\UsrTmp

C:\Program Files>cdx rm 1
C:\Program Files>cdx
[1] C:\Program Files
[2] d:\tmp
[3] t:\UsrTmp

C:\Program Files>cdx name 3:tmp
C:\Program Files>cdx
[1] C:\Program Files
[2] d:\tmp
[3] t:\UsrTmp   <--<<< (tmp)

C:\Program Files>cdx :tmp
t:\UsrTmp>cdx :
C:\Program Files>
share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.