使用命令 pushd 和 popd
Nilesh Katuwal
2023年1月30日
pushd
和 popd
命令在計算中與命令列目錄堆疊一起操作。
Linux 和其他類 Unix 作業系統,命令 pushd
和 popd
允許你與目錄堆疊互動並修改當前工作目錄。儘管 pushd
和 popd
是強大而有用的命令,但它們並沒有得到太多的讚賞和使用。
在 Linux 中使用 pushd
命令
在第一個 pushd
命令之後,堆疊中有兩個條目:你的左側目錄和你擁有的目錄。
pushd
命令具有以下內容:
$ pushd ~/Desktop
輸出:
~/Desktop ~
終端的目錄將更改為 Desktop
。即,~/Desktop$
~/Desktop$ pushd ~/Music
輸出:
~/Music ~/Desktop ~
現在,它已更改為音樂
。
$ pushd ~
輸出:
~ ~/Music ~/Desktop ~
我們使用最後一個 pushd
命令返回到我們的主目錄。
因此,象徵我們的主目錄的波浪號~
是堆疊上的第一個和最後一個條目。這表明儘管堆疊中已經存在一個目錄,但我們將為其他 pushd
命令再次新增它。
在 Linux 中使用 popd
命令
popd
命令用於從堆疊中刪除目錄。當我們檢視目錄堆疊時,我們看到 /home/user
在位置 1
。
我們鍵入以下內容將數字傳遞給 popd
以將其從堆疊中刪除:
$ dirs -v -l
輸出:
0 /home/user
1 /home/user/Music
2 /home/user/Desktop
3 /home/user
$ popd +1
輸出:
~ ~/Desktop ~
/home/user
目錄被刪除,堆疊中它下面的所有目錄都被推高一個位置。
$ popd
輸出:
~/Desktop
我們將使用 popd
從堆疊中刪除最頂層的目錄並將其替換為第二個最目錄。
現在這是你最近移出的目錄,因此你已被重定向回該目錄。
疊加堆疊
使用 cd
恢復舊習慣和轉移目錄很簡單。
如果這樣做,你將蓋住堆疊中的第一個目錄。這是不可避免的,因為第一個插槽是為當前工作目錄指定的,並且沒有移動。
為此,請在終端中鍵入以下內容:
$ dirs -v -l
輸出:
0 /home/user/Desktop
$ cd ~/Music
~/Music$ dirs -v -l
輸出:
0 /home/user/Music
一旦你熟悉了 pushd
和 popd
命令並可能利用它們來構建一些別名,你將擁有一種在資料夾之間跳轉的超快速方法。