Linux 指令詳解 pushd 快速切換目錄
來源:程序員人生 發(fā)布時(shí)間:2015-03-14 09:32:00 閱讀次數(shù):3024次
指令:pushd
在不同目錄間切換
在命令行模式中,當(dāng)需要在不同目錄中不停的切換時(shí)會(huì)發(fā)現(xiàn)不停的輸入目錄很麻煩,這個(gè)時(shí)候就需要用上pushd函數(shù)了
pushd工作原理:
pushd將指定目錄壓入當(dāng)前shell保護(hù)的目錄棧,從而可以實(shí)現(xiàn)多個(gè)不同路徑之間的切換.
Ps:默許情況下,pushd函數(shù)可能不包括在你的Linux中,但存在于red Hat和用Red Hat驅(qū)動(dòng)的系統(tǒng)中。
語法:
# pushd [-n] [+N | -N | dir]
參數(shù):
-n: 只將目錄加入到目錄棧中,不切換目錄
+N: 將第N個(gè)目錄移至棧頂(+ 表示從左或上邊(棧頂)數(shù)起,數(shù)字從0開始,棧頂表示為+0)
-N: 將第N個(gè)目錄移至棧頂(- 表示從右或下邊(棧底)數(shù)起,數(shù)字從0開始,棧底表示為-0)
dir:指定需要加入目錄棧的目錄,并同時(shí)切換到該目錄
Ps:
1、 不帶參數(shù)時(shí)pushd命令將交換目錄棧棧頂?shù)膬蓚€(gè)目錄(同等于cd -)
2、 如果加入目錄時(shí)沒有指定目錄名稱,則會(huì)將當(dāng)前的工作目錄置入目錄棧的最頂端
3、 如果加入目錄時(shí)沒有指定目錄棧的位置,會(huì)置入目錄棧的最頂端
4、 最左側(cè)或上面表示棧頂,最右或最下面邊表示棧底
5、 目錄棧的第0個(gè)目錄(即棧頂目錄),始終是當(dāng)前目錄
6、 最后1個(gè)被放入堆中的目錄在堆的最頂部
7、 當(dāng)目錄棧為空時(shí),目錄棧的棧底保存的是履行 pushd 命令時(shí)的工作目錄
8、 當(dāng)加入pushd和1個(gè)路徑名時(shí),將自動(dòng)產(chǎn)生1個(gè)堆棧,內(nèi)容是加入的目錄名和當(dāng)前工作的目錄名
實(shí)例
現(xiàn)在有以下3個(gè)目錄需要常常的切換:/doiido/boy : /home/user : /etc/sshd
1:首先將3個(gè)目錄放入pushd棧中
# pushd /doiido/boy
/doiido/boy ~
# pushd /home/user
/home/user /doiido/boy ~
# pushd /etc/ssh
/etc/ssh /home/user /doiido/boy ~
2:查看棧中的內(nèi)容
dirs命令是查看目錄棧中的內(nèi)容
# dirs -v
0 /etc/ssh
1 /home/user
2 /doiido/boy
3 ~
3:切換
3.1:在/etc/ssh和/home/user之間相互切換
# pushd
3.2:切換到/doiido/boy目錄
# pushd +2
4:清空
# dirs -c
其他:
1、如果需要從目錄棧中刪除1個(gè)目錄,則使用popd。具體詳見popd使用方法
2、如果想查看目錄棧中目錄列表,則使用dirs。具體詳見dirs使用方法
生活不易,碼農(nóng)辛苦
如果您覺得本網(wǎng)站對(duì)您的學(xué)習(xí)有所幫助,可以手機(jī)掃描二維碼進(jìn)行捐贈(zèng)