最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Linux下如何高效切換目錄的方法

 更新時(shí)間:2020年08月12日 08:48:21   作者:良許Linux  
這篇文章主要介紹了Linux下如何高效切換目錄,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

Linux 下對(duì)于目錄的切換,大家肯定會(huì)想到一個(gè)命令:cd 命令。這個(gè)是 Linux 下再基本不過的命令,如果這個(gè)命令都不知道的話,趕緊剖腹自盡去吧。

cd 命令確實(shí)很方便,但如果需要頻繁在下面的目錄切換,你可能要懷疑人生了:

/home/alvin/projects/blogdemos/linux-system-programming/thread
/home/alvin/projects/blogdemos/diff
/home/harry/study/日本文化/中日交流/影視業(yè)/動(dòng)作片

如果只會(huì) cd 命令的話,那么就需要不停地 cd ,直到你發(fā)瘋。

在這種情況下,我們?nèi)绾胃咝нM(jìn)行目錄切換呢?良許給大家介紹三個(gè)命令:pushd 、 popd 、 dirs 。

這三個(gè)命令其實(shí)都是對(duì) 目錄棧 進(jìn)行操作,而 目錄棧 就是一個(gè)保存目錄的棧結(jié)構(gòu),該棧結(jié)構(gòu)的頂端永遠(yuǎn)都存放著當(dāng)前目錄(敲黑板了,重點(diǎn)?。。?。

有編程基礎(chǔ)的同學(xué)都知道, 都是遵循著 后進(jìn)先出 的原則。也就是說,在棧結(jié)構(gòu)里,后面進(jìn)棧的元素,將先出棧。

復(fù)習(xí)完基本概念,我們?cè)賮碓敿?xì)這三個(gè)命令。

顯示目錄棧內(nèi)容:dirs

首先是 dirs 。這個(gè)命令很簡單,就是顯示目錄棧的內(nèi)容。它有以下三個(gè)常用選項(xiàng):

選項(xiàng) 含義
-p 每行顯示一條記錄
-v 每行顯示一條記錄,同時(shí)展示該記錄在棧中的index
-c 清空目錄棧

其中,-p-v 選項(xiàng)的區(qū)別是,-v 選項(xiàng)將顯示每條記錄在棧中的索引,除此之外完全一樣。假如現(xiàn)在有一個(gè)目錄棧,我們來看看它里面有啥內(nèi)容:

[alvin@VM_0_16_centos dir2]$ pwd
/home/alvin/test/dir2
[alvin@VM_0_16_centos dir2]$ dirs -v
 0 ~/test/dir2
 1 ~/test/dir1
 2 ~/test/dir3
 3 ~/test

請(qǐng)注意,最頂部的元素永遠(yuǎn)跟當(dāng)前目錄一致,如果你在其它目錄下查看目錄棧,第一個(gè)元素將對(duì)應(yīng)發(fā)生改變。同理,如果你用后文介紹的 pushdpopd 來操作目錄棧的話,當(dāng)前目錄將切換到目錄棧的第一個(gè)元素對(duì)應(yīng)地址。

如果我們要清空目錄棧,直接使用 -c 選項(xiàng)即可。

[alvin@VM_0_16_centos diff]$ dirs -c
[alvin@VM_0_16_centos diff]$ dirs -v
 0 ~/projects/blogdemos/diff

壓入目錄棧:pushd

每次 pushd 命令執(zhí)行完成之后,默認(rèn)都會(huì)執(zhí)行一個(gè) dirs 命令來顯示目錄棧的內(nèi)容。pushd 的用法主要有如下幾種:

1. pushd + 目錄

pushd 后面如果直接跟目錄使用,會(huì)切換到該目錄并且將該目錄置于目錄棧的棧頂。例子:

[alvin@VM_0_16_centos test]$ pushd dir1
~/test/dir1 ~/test
[alvin@VM_0_16_centos dir1]$ pushd ../dir2
~/test/dir2 ~/test/dir1 ~/test
[alvin@VM_0_16_centos dir2]$ pushd ../dir3
~/test/dir3 ~/test/dir2 ~/test/dir1 ~/test
[alvin@VM_0_16_centos dir3]$ dirs -v
 0 ~/test/dir3
 1 ~/test/dir2
 2 ~/test/dir1
 3 ~/test

2. pushd (不帶任何參數(shù))

pushd 不帶任何參數(shù)執(zhí)行的效果就是,將目錄棧最頂層的兩個(gè)目錄進(jìn)行交換。前面我們已經(jīng)強(qiáng)調(diào)過,目錄棧第一個(gè)元素與當(dāng)前目錄是相關(guān)的,所以第一個(gè)元素發(fā)生改變時(shí),當(dāng)前目錄將對(duì)應(yīng)切換,反之亦然。

[alvin@VM_0_16_centos dir3]$ dirs -v
 0 ~/test/dir3
 1 ~/test/dir2
 2 ~/test/dir1
 3 ~/test
[alvin@VM_0_16_centos dir3]$ pwd
/home/alvin/test/dir3
[alvin@VM_0_16_centos dir3]$ pushd
~/test/dir2 ~/test/dir3 ~/test/dir1 ~/test
[alvin@VM_0_16_centos dir2]$ pwd
/home/alvin/test/dir2	#對(duì)應(yīng)目錄發(fā)生改變
[alvin@VM_0_16_centos dir2]$ dirs -v
 0 ~/test/dir2
 1 ~/test/dir3		#索引 0 和 1 的內(nèi)容對(duì)調(diào)
 2 ~/test/dir1
 3 ~/test

**3. pushd +/-n **

pushd +/-n 就是直接切換到對(duì)應(yīng)索引值的目錄。注意,這里既可以用加號(hào),也可以用減號(hào)。如果是加號(hào)的話,將從目錄棧由上往下數(shù),而用減號(hào)的話,將從目錄棧由下往上數(shù)。

接下來就回到了我們本文開頭的問題,如果我們要在兩個(gè)或多個(gè)路徑很長的目錄之間頻繁切換,該如何操作?

首先,我們用 pushd + 目錄 的方式將這幾個(gè)路徑添加到目錄棧中;

然后,再用 pushd +/-n 在不同的目錄間快速切換。具體演示如下:

[alvin@VM_0_16_centos dir2]$ pwd
/home/alvin/test/dir2
[alvin@VM_0_16_centos dir2]$ dirs -v
 0 ~/test/dir2
 1 ~/test/dir3
 2 ~/test/dir1
 3 ~/test
[alvin@VM_0_16_centos dir2]$ pushd +2
~/test/dir1 ~/test ~/test/dir2 ~/test/dir3
[alvin@VM_0_16_centos dir1]$ pwd
/home/alvin/test/dir1
[alvin@VM_0_16_centos dir1]$ dirs -v
 0 ~/test/dir1
 1 ~/test
 2 ~/test/dir2
 3 ~/test/dir3

彈出目錄棧:popd

每次 popd 命令執(zhí)行完成之后,默認(rèn)都會(huì)執(zhí)行一個(gè) dirs 命令來顯示目錄棧的內(nèi)容。popd 的用法主要有如下幾種:

1. popd (不帶任何參數(shù))

popd不帶任何參數(shù)執(zhí)行的效果,就是將目錄棧中的棧頂元素出棧。這時(shí),棧頂元素發(fā)生變化,自然當(dāng)前目錄也會(huì)發(fā)生相應(yīng)的切換。

[alvin@VM_0_16_centos dir3]$ dirs -v
 0 ~/test/dir3
 1 ~/test/dir1
 2 ~/test
 3 ~/test/dir2
[alvin@VM_0_16_centos dir3]$ popd
~/test/dir1 ~/test ~/test/dir2
[alvin@VM_0_16_centos dir1]$ dirs -v
 0 ~/test/dir1
 1 ~/test
 2 ~/test/dir2

2. popd +/-n

將目錄棧中的第n個(gè)元素刪除。同樣的,加減號(hào)表示從上往下數(shù),還是從下往上數(shù)。

[alvin@VM_0_16_centos dir1]$ dirs -v
 0 ~/test/dir1
 1 ~/test
 2 ~/test/dir2
[alvin@VM_0_16_centos dir1]$ popd +1
~/test/dir1 ~/test/dir2
[alvin@VM_0_16_centos dir1]$ dirs -v
 0 ~/test/dir1
 1 ~/test/dir2

到此這篇關(guān)于Linux下如何高效切換目錄的方法的文章就介紹到這了,更多相關(guān)Linux高效切換目錄內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 讓Apache支持shtml實(shí)現(xiàn)include文件解析的配置方法

    讓Apache支持shtml實(shí)現(xiàn)include文件解析的配置方法

    Apache支持include文件解析shtml首先要應(yīng)該修改Apache配置文件httpd.conf
    2011-03-03
  • 關(guān)于AIX掛載NFS寫入效率低效的解決方法

    關(guān)于AIX掛載NFS寫入效率低效的解決方法

    這篇文章主要給大家介紹了關(guān)于AIX掛載NFS寫入效率低效的解決方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2018-11-11
  • v2rayN的延遲是-1的問題解決方法

    v2rayN的延遲是-1的問題解決方法

    這篇文章主要為大家詳細(xì)介紹了v2rayN的延遲是-1的問題解決方法,本文通過了相關(guān)示例圖片進(jìn)行了詳細(xì)的講解,需要的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2023-08-08
  • Linux下如何更新curl版本

    Linux下如何更新curl版本

    這篇文章主要介紹了Linux下如何更新curl版本問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • Linux之crontab定時(shí)執(zhí)行腳本方式

    Linux之crontab定時(shí)執(zhí)行腳本方式

    這篇文章主要介紹了Linux之crontab定時(shí)執(zhí)行腳本方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-04-04
  • ubuntu16.04下安裝openssh-server報(bào)依賴錯(cuò)誤的完美解決方法(非常不錯(cuò))

    ubuntu16.04下安裝openssh-server報(bào)依賴錯(cuò)誤的完美解決方法(非常不錯(cuò))

    這篇文章主要介紹了ubuntu16.04下安裝openssh-server報(bào)依賴錯(cuò)誤的完美解決方法(非常不錯(cuò))的相關(guān)資料,需要的朋友可以參考下
    2016-11-11
  • linux epoll機(jī)制詳解

    linux epoll機(jī)制詳解

    這篇文章主要介紹了linux epoll機(jī)制詳解,介紹了select()和poll() IO多路復(fù)用模型,epoll IO多路復(fù)用模型實(shí)現(xiàn)機(jī)制,epoll的接口和工作模式等相關(guān)內(nèi)容,小編覺得還是挺不錯(cuò)的,這里分享給大家,需要的朋友可以參考下
    2018-01-01
  • Linux命令如何輸入輸出重定向、追加

    Linux命令如何輸入輸出重定向、追加

    Linux中的輸入輸出重定向和追加是通過文件描述符來控制的,常用的重定向符號(hào)包括<、<<、>、>>、2>、2>>和>&,這些符號(hào)可以用于覆蓋或追加輸出到文件,也可以用于合并標(biāo)準(zhǔn)輸出和錯(cuò)誤輸出
    2024-12-12
  • linux命令行操作百度云上傳下載文件

    linux命令行操作百度云上傳下載文件

    大家好,本篇文章主要講了linux命令行操作百度云上傳下載文件,感興趣的同學(xué)趕快來看一看吧,對(duì)你有幫助的話記得收藏一下哦
    2021-11-11
  • linux?服務(wù)器安裝gcc8的問題記錄

    linux?服務(wù)器安裝gcc8的問題記錄

    我原本安裝了gcc13.0版本,但是版本太高了,導(dǎo)致我安裝cuda報(bào)錯(cuò)gcc版本太高,所以就安裝低版本的gcc,下面通過本文給大家分享linux?服務(wù)器安裝gcc8的問題記錄,感興趣的朋友一起看看吧
    2024-07-07

最新評(píng)論

阿拉善左旗| 深圳市| 始兴县| 赤水市| 砀山县| 措美县| 广昌县| 林芝县| 定远县| 岑溪市| 苏尼特右旗| 简阳市| 宜州市| 大化| 诏安县| 哈密市| 额尔古纳市| 哈巴河县| 余江县| 高州市| 娄底市| 宁明县| 宁晋县| 新和县| 安福县| 大化| 贵溪市| 长阳| 镇沅| 鄢陵县| 朝阳市| 黑河市| 五大连池市| 鹤山市| 哈巴河县| 张家港市| 锡林浩特市| 蒲城县| 哈尔滨市| 莱州市| 定结县|