与linux cd命令相似,用pushd实现在不同目录间切换
在命令行模式下,当你工作在不同目录中,你将发现你有很多时间都浪费在重复输入上如果这些目录不在同一个根目录中,你不得不在转换时输入完整的路径名,这难免让人有些难以忍受但你可以用以下的一个或两个步骤来避免所有多余的输入:用命令行解释器中的历史记录,或者用命令行函数pushd
用命令行解释器中的历史记录的好处是只需按很少的键在命令行中用向上的箭头来查找你用过的命令,直到你找到,然后按回车键如果你所切换的两个目录在整个驱动器的子目录结构中很接近,那用解释器中的历史记录可能是你最好的选择
然而,如果你在两个截然不同的路径间转换的话,你可能很希望利用pushd这个函数,你可以用它创建一个目录堆栈(在内存中的一个列表)
注释:缺省情况下,pushd函数可能不包括在你的Linux中;但它包涵在Red Hat和用Red Hat驱动的系统中如果你的系统中没有pushd函数,你可以在ibiblio.org网站上下载相关的函数工具
这里说一下怎么用pushd假设你现在工作在/usr/share/fonts/目录下你需要对/usr/share/fonts/做一些改动,你将频繁的在两个目录间切换开始在一个目录下,用pushd函数切换到另一个目录在我们的例子中,开始在/usr/share/fonts/下,你键入pushd /home/yxy/,然后按回车键现在,你将在下一行看到堆栈中的内容:/home/yxy /usr/share/fonts
正如你所看到的,当你键入pushd和一个路径名时,将自动产生一个堆栈,内容是你键入的目录名和你当前工作的目录名在我们的例子中,你所键入的路径(/opt/wonderword/fonts)在堆栈的顶部
快速返回上一级目录,你可以直接键入pushd,如果不跟路径名,
你将返回到堆栈中前一个目录的上一层目录
如果你需要从堆栈中删除一个目录,键入popd,然后是目录名称,再按回车键想查看堆栈中目录列表,键入dirs,然后按回车键popd和dirs命令也是常用函数中的一部分
cd - 后退 在pop之后仍然起作用 可以找到之前操作所在的目录
但是用pushd加入的目录在输入popd后就无法再使用pushd找到了(前提是被popd出来的是当前所在目录)