popd — 從目錄堆疊彈出並返回上一個目錄

從目錄堆疊彈出,返回 pushd 之前的目錄。

語法

popd [+N | -N]

常用選項

選項 說明 範例
+N 移除堆疊中第 N 個(不切換目錄) popd +1
-N 移除堆疊底部第 N 個 popd -0
-n 只操作堆疊,不切換目錄 popd -n

使用範例

範例 1:返回 pushd 前的目錄

每次 popd 都返回一層,直到堆疊清空。

$ pushd /var/log
# 做一些事情
popd   # 返回 pushd 前的目錄
~
範例 2:查看目前目錄堆疊

dirs -v 顯示帶編號的目錄堆疊,popd +N 可移除特定位置的項目。

$ dirs -v
 0  /var/log
 1  /etc/nginx
 2  ~

常見錯誤與排錯

bash: popd: directory stack empty
原因
目錄堆疊已空,沒有可以 pop 的路徑。
解法
確認已用 pushd 推入路徑,或用 dirs 確認堆疊狀態。

延伸閱讀