前言:
此刻姐妹们对“切换目录cd命令是什么”大概比较关心,小伙伴们都需要了解一些“切换目录cd命令是什么”的相关资讯。那么小编也在网摘上收集了一些有关“切换目录cd命令是什么””的相关内容,希望大家能喜欢,姐妹们快快来了解一下吧!概述
Linux系统对于目录的切换,大家肯定会想到一个命令:cd 命令。
cd 命令确实很方便,但如果需要频繁在几个目录切换,如果用 cd 命令的话,那么就需要不停地 cd ,这时候就很麻烦了,在这种情况下,我们就可以用三个命令:pushd 、 popd 、 dirs 来高效进行目录切换。
这三个命令其实都是对目录栈 进行操作,而目录栈 就是一个保存目录的栈结构,该栈结构的顶端永远都存放着当前目录。栈都是遵循着后进先出的原则,也就是说在栈结构里,后面进栈的元素,将先出栈。
一、目录栈指令
目录栈是用户最近访问过的系统目录列表,并以堆栈的形式管理。栈中的内容与Shell环境变量DIRSTACK的值对应。
1、dirs
1.1、功能
显示当前目录栈中的所有记录(不带参数的dirs命令显示当前目录栈中的记录)
1.2、语法
格式:dirs [-clpv] [+n] [-n]
参数说明:
注意:dirs始终显示当然目录, 再是堆栈中的内容;即使目录堆栈为空, dirs命令仍然只显示当然目录
2、pushd
2.1、功能
pushd命令常用于将目录加入到栈中,加入记录到目录栈顶部,并切换到该目录;若pushd命令不加任何参数,则会将位于记录栈最上面的2个目录对换位置
2.2、语法
格式:pushd [目录 | -N | +N] [-n]
参数说明:
3、popd
3.1、功能
popd用于删除目录栈中的记录;如果popd命令不加任何参数,则会先删除目录栈最上面的记录,然后切换到删除过后的目录栈中的最上面的目录
3.2、语法
格式:pushd [-N | +N] [-n]
参数说明:
二、 实验测试
1、入栈与出栈
#mkdir /tmp/dir{1,2,3,4}#for ((i=1;i<=4;i++))dopushd /tmp/dir${i}done#dirs#popd(相当于popd +0)#pushd /tmp/dir4# popd +1# popd -2# pushd /tmp/dir3# pushd /tmp/dir2# pushd -1
注意:最左边表示栈顶,最右边表示栈底
2、清空栈
# dirs# dirs -c# dirs
3、列表形式显示的栈的内容
#for ((i=1;i<=4;i++))dopushd /tmp/dir${i}done# dirs -l -v
后面会分享更多devops和DBA方面内容,感兴趣的朋友可以关注下~
标签: #切换目录cd命令是什么