Linux学习-目录栈

数据结构:根据一组精确的规则存储和检索数据的实体。

栈:一种数据结构,每次只能存入和检索一个元素,在任何时候,下一个要检索的数据是最后一个存储进入的数据。后进后出(FIFO)

压入:存储数据元素,最近一次压入的数据元素处在栈的顶部。

弹出:从栈顶检索数据元素。

shell提供了一个类似栈的功能,来存放目录名称。

pushd命令将目录的名称压入目录栈中,popd命令从栈中弹出一个目录名称,dirs命令显示栈的内容。

目录栈是一种高级工具,运行维护一个目录列表,每当需要时,可以将工作目录改变为列表中的一个目录。

在任何时候,栈顶的目录名称就是当前的工作目录。

改变栈顶目录名称就会自动地改变工作目录,改变工作目录也会自动地改变栈顶目录名称。

命令 动作
dirs 显示栈中目录名称(home目录显示为~)
dirs -l 显示栈中目录名称(home目录显示为完整路径名)
dirs -v 显示栈中目录名称(每行一个,并有数字标识)
pushd 目录名称 将指定目录压入栈中,并改变工作目录(栈顶改变)
pushd +n 经目录#n移到栈顶,并改变工作目录(栈顶改变)
popd 弹出栈顶,并改变工作目录(栈顶改变)
popd +n 从栈中移除目录#n
dirs -c 除工作目录外,移除目录栈中所有目录


ps:

dirs -c 会清空栈,但是永远不会看到一个完全空的栈,因为栈顶永远是工作目录。




猜你喜欢

转载自blog.csdn.net/qq_31730735/article/details/80534504
今日推荐