国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Linux中如何讓切換目錄更方便?

Linux愛好者 ? 來源:博客園 ? 作者:學無止境 ? 2020-12-24 11:38 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

【導讀】在 Linux 下切換目錄,你還是只會 cd 這個命令嗎? 快來學習下 pushd popd 命令吧,讓你切換目錄更加的方便。

在命令行模式下,當你工作在不同目錄中,你將發現你有很多時間都浪費在重復輸入上如果這些目錄不在同一個根目錄中,你不得不在轉換時輸入完整的路徑名,這難免讓人有些難以忍受但你可以用以下的一個或兩個步驟來避免所有多余的輸入:用命令行解釋器中的歷史記錄,或者用命令行函數pushd。

用命令行解釋器中的歷史記錄的好處是只需按很少的鍵在命令行中用向上的箭頭來查找你用過的命令,直到你找到,然后按回車鍵如果你所切換的兩個目錄在整個驅動器的子目錄結構中很接近,那用解釋器中的歷史記錄可能是你最好的選擇。

然而,如果你在兩個截然不同的路徑間轉換的話,你可能很希望利用pushd這個函數,你可以用它創建一個目錄堆棧(在內存中的一個列表)。

注釋:缺省情況下,pushd函數可能不包括在你的Linux中;但它包涵在Red Hat和用Red Hat驅動的系統中如果你的系統中沒有pushd函數,你可以在ibiblio.org網站上下載相關的函數工具。

這里說一下怎么用pushd假設你現在工作在/usr/share/fonts/目錄下你需要對/usr/share/fonts/做一些改動,你將頻繁的在兩個目錄間切換開始在一個目錄下,用pushd函數切換到另一個目錄在我們的例子中,開始在/usr/share/fonts/下,你鍵入pushd /home/yxy/,然后按回車鍵現在,你將在下一行看到堆棧中的內容:/home/yxy /usr/share/fonts。

正如你所看到的,當你鍵入pushd和一個路徑名時,將自動產生一個堆棧,內容是你鍵入的目錄名和你當前工作的目錄名在我們的例子中,你所鍵入的路徑(/opt/wonderword/fonts)在堆棧的頂部。

快速返回上一級目錄,你可以直接鍵入pushd,如果不跟路徑名,你將返回到堆棧中前一個目錄的上一層目錄。

如果你需要從堆棧中刪除一個目錄,鍵入popd,然后是目錄名稱,再按回車鍵想查看堆棧中目錄列表,鍵入dirs,然后按回車鍵popd和dirs命令也是常用函數中的一部分。

一,為何要使用這幾個命令?

可能大家會有疑問,為何要使用這幾個命令,難道用cd不就可以切換目錄了嗎?

沒錯,使用cd就可以切換到需要訪問的目錄,但是有時會是一個路徑很長,層次很多的目錄,進到此目錄下后,這時我們不小心運行了 cd命令,理所當然,我們回到了自己的home目錄,這時如果想回去怎么辦?

還有:因為工作的需要,我們需要不停在幾個很深層的目錄之間切換,不止一個,那么即使有tab鍵幫忙,我們也會因為一個cd命令花費很多時間,如何在多個目錄之間切換時能更方便些呢?

pushd、popd是我們的好幫手

說明: pushd、popd、dirs 這幾個我們講到的命令是bash內建的命令,所以只要登錄到了bash,這幾個命令就可以使用了。

二,如何在兩個目錄之間切換?

如果只是在兩個目錄之間切換,那么還不必使用pushd,這時只需使用 cd -就可以了。

cd - 的作用是可以回到前一個目錄。

看例子:

[root@localhost~]# cd/usr/share/kde4/apps/kget/pics/[root@localhostpics]# cd-/root[root@localhost~]#cd -/usr/share/kde4/apps/kget/pics[root@localhost pics]#

怎么樣?在兩個目錄之間切換非常方便,無需再輸入很長的路徑。

說明:

為何cd -能夠回到前一個目錄?

這是因為 - 在此處等同于 $OLDPWD變量,此問題可以參見bash的info信息,

cd 一項有相關的說明: An argument of - is equivalent to $OLDPWD。

$OLDPWD變量就是bash所記錄的前一個目錄,也就是說:$OLDPWD 和 - 相等。

下面我們再看一個例子:

[root@localhost~]#cd /usr/share/kde4/apps/kget/pics/[root@localhostpics]# echo$OLDPWD;/root[root@localhostpics]# cd$OLDPWD[root@localhost ~]# echo $OLDPWD;/usr/share/kde4/apps/kget/pics[root@localhost~]#cd $OLDPWD;[root@localhost pics]# echo $OLDPWD;/root

我們可以得到結構: 用cd -和cd $OLDPWD都可以在最近所操作的兩個目錄之間進行切換。

三,如何在多個目錄之間切換?

因為 cd -和 cd $OLDPWD都是只支持最近操作的兩個目錄,所以要在多個目錄之間操作時,我們需要使用 pushd。

1、先來介紹我們會用到的3條命令

pushd:切換到作為參數的目錄,并把原目錄和當前目錄壓入到一個虛擬的堆棧中如果不指定參數,則會回到前一個目錄,并把堆棧中最近的兩個目錄作交換。

popd:彈出堆棧中最近的目錄。

dirs: 列出當前堆棧中保存的目錄列表。

看例子:

[root@localhost~]# pushd/usr/local/sbin//usr/local/sbin ~[root@localhostsbin]# dirs/usr/local/sbin ~[root@localhostsbin]# dirs-p-v0 /usr/local/sbin1 ~[root@localhostsbin]# pushd/usr/share/kde4/apps/kget//usr/share/kde4/apps/kget /usr/local/sbin ~[root@localhostkget]# dirs-p-v0 /usr/share/kde4/apps/kget1 /usr/local/sbin2 ~

說明: dirs的 -p參數可以每行一個目錄的形式顯示堆棧中的目錄列表;

-v 參數可以在目錄前加上編號;

注意:有 -v時,不添加 -p也可以每行一個目錄的形式顯示。

說明之二:我們可以看到:最近壓入堆棧的目錄位于最上面。

2,如何在最近的兩個目錄之間切換?

在最近的兩個目錄之間切換:用pushd不加參數即可

[root@localhostkget]# pushd/boot/grub//boot/grub /usr/share/kde4/apps/kget /usr/local/sbin ~[root@localhost grub]# dirs -v0 /boot/grub1 /usr/share/kde4/apps/kget2 /usr/local/sbin3 ~[root@localhostgrub]# pushd/usr/share/kde4/apps/kget /boot/grub /usr/local/sbin ~[root@localhostkget]# dirs-v0 /usr/share/kde4/apps/kget1 /boot/grub2 /usr/local/sbin3 ~[root@localhostkget]# pushd/boot/grub /usr/share/kde4/apps/kget /usr/local/sbin ~[root@localhostgrub]# dirs-v0 /boot/grub1 /usr/share/kde4/apps/kget2 /usr/local/sbin3~

說明:可以看到,用pushd不加參數在最近的兩個目錄之間切換時,當前目錄總是位于堆棧的最上面。

3,如何在多個目錄之間切換?

用 pushd +n 即可

說明:n 是一個數字,有此參數時,是切換到堆棧中的第n個目錄,并把此目錄以堆棧循環的方式推到堆棧的頂部。

需要注意:堆棧從第0個開始數起。

看例子:

[root@localhost grub]# dirs -v0 /boot/grub1 /usr/share/kde4/apps/kget2 /usr/local/sbin3 ~[root@localhostgrub]# pushd+2/usr/local/sbin ~ /boot/grub /usr/share/kde4/apps/kget[root@localhostsbin]# dirs-v0 /usr/local/sbin1 ~2 /boot/grub3 /usr/share/kde4/apps/kget

4,如何把目錄從堆棧中刪除?

用popd即可。

看例子:

root@localhost sbin]# dirs -v0 /usr/local/sbin1 ~2 /boot/grub3 /usr/share/kde4/apps/kget[root@localhost sbin]# popd~ /boot/grub /usr/share/kde4/apps/kget[root@localhost~]# dirs-v0 ~1 /boot/grub2 /usr/share/kde4/apps/kget[root@localhost~]# popd+1 ~ /usr/share/kde4/apps/kget[root@localhost~]# dirs-v0 ~1 /usr/share/kde4/apps/kget

說明:可以看到popd不加參數的運行情況:

popd把堆棧頂端的目錄從堆棧中刪除,并切換于位于新的頂端的目錄。

說明之二: popd 加有參數 +n時,n 是堆棧中的第n個目錄,表示把堆棧中第n個目錄從堆棧中刪除。

四,多學一點知識

1,pushd和popd都可以只影響堆棧而不切換目錄

用 -n 參數即可。

看例子:

[root@localhost~]# dirs-v0 ~1 /usr/share/kde4/apps/kget[root@localhost~]# pushd-n/boot/grub~ /boot/grub /usr/share/kde4/apps/kget[root@localhost~]# dirs-v0 ~1 /boot/grub2 /usr/share/kde4/apps/kget

2, dirs可以清空目錄堆棧

用 -c參數即可

看例子:

[root@localhost~]# dirs-v0 ~1 /boot/grub2 /usr/share/kde4/apps/kget[root@localhost~]# dirs-c[root@localhost~]# dirs-v0 ~

說明: 位于堆棧頂部的目錄是當前目錄,它不能被pop出去的。

- EOF -

推薦閱讀點擊標題可跳轉

1、怎樣用 Bash 編程:語法和工具

2、Shell 信號發送與捕捉

3、Shell 監控文件變化

看完本文有收獲?請分享給更多人

推薦關注「Linux 愛好者」,提升Linux技能

原文標題:pushd、popd、dirs、cd :讓切換目錄更方便

文章出處:【微信公眾號:Linux愛好者】歡迎添加關注!文章轉載請注明出處。

責任編輯:haq

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • Linux
    +關注

    關注

    88

    文章

    11760

    瀏覽量

    219020
  • 函數
    +關注

    關注

    3

    文章

    4417

    瀏覽量

    67504

原文標題:pushd、popd、dirs、cd :讓切換目錄更方便

文章出處:【微信號:LinuxHub,微信公眾號:Linux愛好者】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    Linux 下開發嵌入式必備命令速查表

    管理等環節輕松應對各種問題。今天,我們整理了一份Linux下嵌入式開發必備命令速查表,你一篇文章就能快速查閱。一、文件與目錄管理命令在嵌入式開發,你經常需要操作
    的頭像 發表于 01-19 09:06 ?881次閱讀
    <b class='flag-5'>Linux</b> 下開發嵌入式必備命令速查表

    飛凌嵌入式ElfBoard-創建目錄

    Linux系統目錄也是系統的一種特殊文件,畢竟Linux系統中一切皆文件。目錄是用于組織
    發表于 01-04 09:30

    如何在Linux列出USB設備

    Linux操作系統提供了許多命令來列出系統連接的USB設備,這些命令非常有用,無論是查看已連接設備的信息,還是進行系統調試。 在本文中,我們將介紹一些常用的命令以及它們的使用方法,幫助大家了解
    發表于 12-24 08:19

    解析Linux的進程、線程和協程

    影響其他進程,進程之間是高度隔離的。Linux,進程由進程標識符(PID)唯一標識。 進程的特點包括: (1)獨立性:每個進程有自己的內存空間和資源,互不干擾。 (2)安全性:進程之間的隔離提高了
    發表于 12-22 11:00

    飛凌嵌入式ElfBoard-Linux系統的文件分類

    的主要功能和Windows系統快捷方式類似,它是指向另一個文件或者目錄,符號鏈接本身不包含數據。6.管道(Pipe)和套接字(Socket)Linux提供了管道和套接字機制,用于不同進程之間的通信。管道和套接字也被視為文件,并
    發表于 12-09 08:59

    Linux新手通關!5分鐘掌握文件/目錄管理,告別“找不到北”

    新手入門:Linux?文件?/?目錄管理實操指南 剛上手?Linux?的小伙伴,是不是常陷入這些?“混亂時刻”:想找的文件藏在層層目錄里,翻半天找不到;誤刪文件后慌得手心冒汗,不知道怎
    的頭像 發表于 11-17 10:42 ?427次閱讀
    <b class='flag-5'>Linux</b>新手通關!5分鐘掌握文件/<b class='flag-5'>目錄</b>管理,告別“找不到北”

    飛凌嵌入式ElfBoard ELF 1板卡-Linux系統基礎入門-目錄相關shell命令

    ,權限,時間等信息-t依照建立時間順序列出文件-F按類型列出文件,在文件末尾用不同符號區分斜線(/)表示目錄星號(*)表示可執行文件@符號 表示鏈接文件-r將文件以字母反序顯示示例:cd切換目錄路徑命令
    發表于 09-29 10:12

    如何在 buildroot 的 rootfs 顯示當前目錄

    如何在 buildroot 的 rootfs 顯示當前目錄
    發表于 09-03 07:02

    電視智能,從“被動播放”到“感知陪伴”

    在智能家居快速發展的今天,電視不再只是一個“播放內容”的設備,而正在逐步成為客廳的智能交互中心。如何電視變得“懂你”,節能、貼心,是終端廠商和方案商們持續探索的方向。 一顆“小
    的頭像 發表于 08-06 14:33 ?957次閱讀

    Linux系統目錄結構全面剖析

    Linux文件系統采用層次化的目錄結構,這種設計遵循了Unix哲學的"一切皆文件"原則。理解Linux目錄層次架構對于系統管理員、運維工程
    的頭像 發表于 07-21 17:33 ?778次閱讀

    FA模型卡片和Stage模型卡片切換

    卡片切換 卡片切換主要包含如下三部分: 卡片頁面布局:FA模型卡片和Stage模型卡片的布局都采用類web范式開發可以直接復用。 卡片配置文件:FA模型的卡片配置在config.json
    發表于 06-06 08:10

    Linux常用命令大全

    Linux常用命令是指在Linux操作系統中廣泛使用的命令工具,這些命令工具可以完成各種不同的任務,如管理文件和目錄、操作進程、網絡通信、軟件安裝等。
    的頭像 發表于 05-03 18:08 ?1863次閱讀

    智慧光伏運維管理系統電站聰明省心

    ?????? 智慧光伏運維管理系統電站聰明省心 ?????? 光伏電站像一片巨大的太陽能農田,每天默默吸收陽光發電。但要讓這片農田高效運轉,過去需要大量人力巡查設備、處理故障,既費時又費力
    的頭像 發表于 03-31 15:44 ?794次閱讀
    智慧光伏運維管理系統<b class='flag-5'>讓</b>電站<b class='flag-5'>更</b>聰明<b class='flag-5'>更</b>省心

    智慧城市新寵:LED燈桿顯示屏街道亮更美

    智慧城市新寵:LED燈桿顯示屏街道亮更美
    的頭像 發表于 03-21 08:26 ?722次閱讀

    從零開始馴服Linux(一):ZYNQ-Linux啟動文件構建全解析

    atk-zynq-linux-xlnx.tar.gz壓縮包文件拷貝到Ubuntu系統,如下所示: 圖 1.2.5 將內核源碼壓縮包文件拷貝到Ubuntu接下來將其解壓,對應的解壓目錄就是Li
    發表于 03-20 16:48