Linux目录栈操作

年后这几天更新的博客有些少,并不是说我没有学习,而是找到了一个比博客更好的梳理零散知识的方法:使用有道笔记,虽然有道笔记几乎原封不动的山寨自evernote,但不得不说,网易山寨的不错。而且比服务器在国外的evernote快多了,更好的一点是,在我用网易邮箱积分兑换空间之后,有4G的容量啊!比evernote大多了。虽然我一贯支持原创,但这次我还是无耻的选择了山寨......废话少说,转如正题。

切换目录操作,在Linux下几乎是最常见的操作了,之前一直都cd这,cd那。最近看书才知道,原来还有目录栈这好东西,完全可以替代cd,不仅如此,使用目录栈还可以带来很多方便,而且主要就下面三个命令。

1 dirs : 显示栈

内置命令dirs显示目录栈的内容。

2 pushd : 将目录压入栈中

使用包含一个参数的内置命令pushd可以将该参数指定的目录压入栈中。除跳转到参数指定目录外,还将显示栈的内容。

当使用不带参数的pushd时,pushd交换栈顶最上面的两个目录,并将新的栈顶目录(即原来的次栈顶目录)作为新的工作目录。

为了访问栈中其他目录,可以才用以下方式:

pushd +n

其中,n为栈中目录的编号,从栈顶算起,栈顶编号为0。此时只会跳转目录,而不会向栈中压如录。

3 popd : 将目录从栈中弹出

使用不带参数的popd将栈顶目录从栈中移出,并将工作目录切换到新的站定目录,即原来的次栈顶目录。

为了移出栈中其他目录,可以使用以下方式:

popd +n

其中,n同上。此时工作目录并不改变。

参考书籍:Linux命令、编辑器与Shell编程

原文地址:https://www.cnblogs.com/realwall/p/2369231.html