📜  Linux 中的 popd 命令及示例

📅  最后修改于: 2022-05-13 01:57:31.251000             🧑  作者: Mango

Linux 中的 popd 命令及示例

popd 命令用于从目录堆栈中删除目录。 popd 中的“d”代表目录,因为它将目录路径删除到堆栈中。执行此命令后,当前目录堆栈显示为以空格分隔的目录列表。每个 popd 命令后目录堆栈的大小都会减小。此目录堆栈基于后进先出 (LIFO) 原则。

popd 命令的语法:

popd [OPTIONS] [DIRECTORY]

使用 popd 命令

考虑以下目录堆栈:

#use the following command to view the directory stack 
dirs -l -v

目录栈

1.删除目录栈中的目录

没有任何参数,popd 命令从堆栈中删除顶级目录。删除顶级目录后,倒数第二个目录将成为当前目录。参考下图可以看出,在执行popd命令之前,当前目录是'Desktop'(因为它是栈顶目录),但执行命令后,当前目录变成了“~ ” 代表主目录,因为它在第二位。



删除目录堆栈中的目录

2.从栈中删除一个目录而不改变当前目录

可以通过使用“-n”和 popd 命令来删除目录而不更改当前目录。通过使用该命令,从顶部起第二个位置的目录将被删除。

popd -n

参考下图,可以看到主目录仍然是当前目录,从顶部起第二个目录被删除。

从堆栈中删除目录而不更改当前目录

3.从任何位置删除目录:

可以从任何位置删除目录。代表目录在目录堆栈中位置的数字参数可以与 popd 命令一起传递。

popd +N #N is the numerical parameter
popd -N #N is the numerical parameter

当使用 popd +N 时,从顶部删除第 N 个目录。当 popd -N 使用时,从底部开始的第 N 个目录被删除。

从任何位置删除目录:

注意:如果目录堆栈中只有一个目录,则会显示错误,因为必须有一个当前工作目录。

从任何位置删除目录: