RE: pushd/popd

Top Page
Attachments:
Message as email
+ (text/plain)
+ (text/html)
+ (text/plain)
Delete this message
Reply to this message
Author: Carruth, Rusty
Date:  
To: Main PLUG discussion list
Subject: RE: pushd/popd
There is also ‘pushd +<number>’ where the number is an index into the stack. You can say ‘dirs’ to get a list of the shell stack…



As a reminder to anyone confused – remember we are talking about commands to the SHELL. You (usually) are sitting at a command prompt doing this. I regularly have anywhere from 2 to 10 directories on my shell



For example, here is ‘dirs’ from my windows machine in a shell that I have done very little in:



$ dirs

/cygdrive/c/Users/rusty.carruth/Documents ~



And from a linux bos:



rusty@sr-arz-web01 ~/performance_numbers/parser/logs $ dirs

~/performance_numbers/parser/logs ~/performance_numbers/cairoplot-1.1



I have started using pushd/popd in my shell scripts when I need to change to a certain directory (to make the job easier, usually). A lot easier than “set pastdir=`pwd`;cd somewhere ; do_stuff;cd $pastdir” since I seem to get that first set wrong too often.



Also, when writing ‘keyboard scripts’ I use pushd/popd a lot when doing this sort of thing:



for I in `find . –type d` ; do pushd $i ; do_stuff && do_other_stuff_that_only_should_happen_if_stuff_was_ok; popd ; done



Understanding the above ‘command-line (or keyboard) script’ is left as an exercise for the reader ;-)



Rusty





From: [mailto:plug-discuss-bounces@lists.phxlinux.org] On Behalf Of Michael Havens
Sent: Friday, October 10, 2014 1:36 PM
To: Main PLUG discussion list
Subject: Re: pushd/popd



I see. So it is a way to stack directories in your order so you can go in reverse a certain order and save yourself some typing. pushd is strange. if you execute it alone it reverses the last two directories on your stack. I didn't know about 'cd -'; thanks for sharing that with me.




:-)~MIKE~(-:



On Fri, Oct 10, 2014 at 1:10 PM, James Mcphee <> wrote:

pushd and popd are stack-oriented. You may notice with cd that you can do "cd -" to go to your previous directory. Think of pushd and popd as a way to store those up. You pushd into various directories, which loads them up on the stack, then popd and you get cd'd back into those directories (in reverse order).



Now, you may be asking yourself "why?". It's just an old way of doing things back when the speed of stack memory meant something. I'm sure someone could figure out an actual use for it, but every time I see it implemented, it's done to be obscure, not because it couldn't be more simply implemented with an array.



On Fri, Oct 10, 2014 at 1:06 PM, Michael Havens <> wrote:

what is the difference between pushd and pod and the command cd


:-)~MIKE~(-:


---------------------------------------------------
PLUG-discuss mailing list -
To subscribe, unsubscribe, or to change your mail settings:
http://lists.phxlinux.org/mailman/listinfo/plug-discuss







--
James McPhee



---------------------------------------------------
PLUG-discuss mailing list -
To subscribe, unsubscribe, or to change your mail settings:
http://lists.phxlinux.org/mailman/listinfo/plug-discuss



---------------------------------------------------
PLUG-discuss mailing list -
To subscribe, unsubscribe, or to change your mail settings:
http://lists.phxlinux.org/mailman/listinfo/plug-discuss