欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

linux命令切换目录的使用方法

程序员文章站 2023-08-16 15:08:51
1.cd - 作用是快速切换到前一个目录,如下:复制代码 代码如下:amosli@amosli-pc:~$ cd learn/fd/amosli@amosli-pc:~/l...

1.cd - 作用是快速切换到前一个目录,如下:

复制代码 代码如下:

amosli@amosli-pc:~$ cd learn/fd/
amosli@amosli-pc:~/learn/fd$ cd -
/home/amosli

2.dirs:显示目录栈,列出当前堆栈中保存的目录列表

复制代码 代码如下:

amosli@amosli-pc:~/learn/fd$ dirs
~/learn/fd

说明: dirs的 -p参数可以每行一个目录的形式显示堆栈中的目录列表
-v参数可以在目录前加上编号
注意:有 -v时,不添加 -p也可以每行一个目录的形式显示

复制代码 代码如下:

amosli@amosli-pc:~/learn/fd$ dirs -p -v
 0  ~/learn/fd
 

入堆栈的目录位于最上面

3.pushd,popd命令介绍

pushd:切换到作为参数的目录,并把原目录和当前目录压入到一个虚拟的堆栈中

如果不指定参数,则会回到前一个目录,并把堆栈中最近的两个目录作交换

popd: 移除堆栈中最近的目录

复制代码 代码如下:

amosli@amosli-pc:/$ pushd bin/
/bin /
amosli@amosli-pc:/bin$ pushd /home/amosli/learn/fd/
~/learn/fd /bin /
amosli@amosli-pc:~/learn/fd$ dirs -p -v
~/learn/fd
 /bin
 /
amosli@amosli-pc:~/learn/fd$ pushd /home/amosli/develop/
~/develop ~/learn/fd /bin /
amosli@amosli-pc:~/develop$ dirs -p -v
~/develop
~/learn/fd
/bin
/

上面使用pushd命令分别将 /、bin/ 、/home/amosli/learn/fd/ 、/home/amosli/develop/ 4个目录压入栈中,栈是后进先出的(lifo,last in first out)的数据结构。

那么如何切换目录?

1)如果是直接pushd不加参数的话就直接切换到最近的目录了

复制代码 代码如下:

amosli@amosli-pc:~/develop$ pushd
~/learn/fd ~/develop /bin /
amosli@amosli-pc:~/learn/fd$

2)pushd  +n

也可以后面跟上数字直接切换到相应的目录。如切换到/(根目录),如下:

复制代码 代码如下:

[code]
amosli@amosli-pc:~/learn/fd$ pushd +3
/ ~/learn/fd ~/develop /bin
amosli@amosli-pc:/$ ls

如何移除目录?

1)popd 直接移除最近的一条目录

复制代码 代码如下:

amosli@amosli-pc:/$ dirs -p -v
 0  /
 1  ~/learn/fd
 2  ~/develop
 3  /bin
amosli@amosli-pc:/$ popd
~/learn/fd ~/develop /bin
amosli@amosli-pc:~/learn/fd$ dirs -p -v
 0  ~/learn/fd
 1  ~/develop
 2  /bin

2)popd +n

直接跟上数字移除指定的目录

复制代码 代码如下:

amosli@amosli-pc:~/learn/fd$ popd +1
~/learn/fd /bin
amosli@amosli-pc:~/learn/fd$ dirs -p -v
 0  ~/learn/fd
 1  /bin