pushd和popd的使用(ex37.sh)

来源:互联网 发布:如何自己做淘宝店招 编辑:程序博客网 时间:2024/06/07 08:32
#!/bin/bashdir1=/usr/localdir2=/var/spoolpushd $dir1# Will do an automatic 'dirs' (list directory stack to stdout).echo "Now in directory `pwd`." # Uses back-quoted 'pwd'.# Now, do some stuff in directory 'dir1'.pushd $dir2echo "Now in directory `pwd`."# Now, do some stuff in directory 'dir2'.echo "The top entry in the DIRSTACK array is $DIRSTACK."popdecho "Now back in directory `pwd`."# Now, do some more stuff in directory 'dir1'.popdecho "Now back in original working directory `pwd`."exit 0# What happens if you don't 'popd' -- then exit the script?# Which directory do you end up in? Why?
[root@localhost shell]# ./ex37.sh
/usr/local /home/shell
Now in directory /usr/local.
/var/spool /usr/local /home/shell
Now in directory /var/spool.
The top entry in the DIRSTACK array is /var/spool.
/usr/local /home/shell
Now back in directory /usr/local.
/home/shell
Now back in original working directory /home/shell.