1. <wbr id="cnjas"><legend id="cnjas"></legend></wbr>

          Linux培訓
          達內IT學院

          400-111-8989

          Linux系統命令行工具的使用技巧(一)

          • 發布:Linux培訓
          • 來源:網絡
          • 時間:2017-06-02 15:42

          在本系列的文章中,我們將會討論一些非常有用的命令行工具使用小技巧,希望你的命令行使用體驗更加愉快。

          但是在開始下一步之前,我得強調一點,這篇文章中的測試實例都是在 Ubuntu 14.04LTS 系統下測試通過的。我們使用命令行 Shell 版本是 bash 4.3.11 。

          Linux 命令行工具使用的一些小技巧

          我們假設你已經掌握了一些 Linux 命令行的基礎知識,比如什么是 root 賬號及 home 目錄,什么是環境變量,如何查看目錄內容等等。說明這些小技巧的同時也會介紹涉及到的概念,如果有的話。

          輕松切換目錄 —— 快捷方式

          假設你正在命令行下做一些操作,并且你需要經常在兩個目錄間來回切換。而且這兩個目錄在完全不同的兩個路徑下,比如說,分別在 /home/ 和 /usr/ 下。你會怎么做呢?

          其中,最簡單直接的方式就是輸入這些目錄的全路徑。雖然這種方式本身沒什么問題,但是卻很浪費時間。另外一種方式就是打開兩個終端窗口分別進行操作。但是這兩種方式使用起來既不方便,也顯得沒啥技術含量。

          你應該感到慶幸的是,還有另外一種更為簡捷的方法來解決這個問題。你需要做的就是先手動切換到這兩個目錄(通過 cd 命令分別加上各自的路徑),之后你就可以使用 cd - 命令在兩個目錄之間來回快速切換了。

          例如:

          我現在在下面的目錄:

          ]$ pwd

          /home/himanshu/Downloads

          然后,我切換到 /usr/ 路徑下的其它目錄:

          cd /usr/lib/

          現在,我可以很方便的使用下面的命令來向前、向后快速地切換到兩個目錄:

          cd -

          下面是 cd - 命令的操作截圖:

          Linux系統命令行工具的使用技巧(一)Linux系統命令行工具的使用技巧(一)

          有一點我得跟大家強調下,如果你在操作的過程中使用 cd 加路徑的方式切換到第三個目錄下,那么 cd - 命令將應用于當前目錄及第三個目錄之間進行切換。

          輕松切換目錄 —— 相關細節

          對于那些有強烈好奇心的用戶,他們想搞懂 cd - 的工作原理,解釋如下:如大家所知道的那樣, cd 命令需要加上一個路徑作為它的參數。現在,當 - 符號作為參數傳輸給 cd 命令時,它將被 OLDPWD 環境變量的值所替代。

          Linux系統命令行工具的使用技巧(一)Linux系統命令行工具的使用技巧(一)

          現在應該明白了吧, OLDPWD 環境變量存儲的是前一個操作目錄的路徑。這個解釋在 cd 命令的 man 幫助文檔中有說明,但是,很遺憾的是你的系統中可能沒有預先安裝 man 命令幫助工具(至少在 Ubuntu 系統下沒有安裝)。

          但是,安裝這個 man 幫助工具也很簡單,你只需要執行下的安裝命令即可:

          sudo apt-get install manpages-posix

          然后做如下操作:

          man cd

          打開 man 幫助文檔主頁后,你將會看到下面很明確的解釋:

          —— 當 - 符號被用作 cd 命令的參數值時,將等同于下面的操作命令:

          cd "$OLDPWD" && pwd

          毫無疑問, cd 命令設置了 OLDPWD 環境變量值。因此每一次你切換操作目錄時,上一個目錄的路徑就會被保存到這個變量里。這還讓我們看到很重要的一點就是:任何時候啟動一個新的 shell 實例(包括手動執行或是使用 shell 腳本),都不存在 ‘上一個工作目錄’。

          Linux系統命令行工具的使用技巧(一)Linux系統命令行工具的使用技巧(一)

          這也很符合邏輯,因為 cd 命令設置了 OLDPWD 環境變量值。因此,除非你至少執行了一次 cd 命令,否則 OLDPWD 環境變量不會包含任何值。

          繼續,盡管這有些難以理解, cd - 和 cd $OLDWPD 命令的執行結果并非在所有環境下都相同。比如說,你重新打開一個新的 shell 窗口時。

          Linux系統命令行工具的使用技巧(一)Linux系統命令行工具的使用技巧(一)

          從上面的截圖可以清楚的看出,當執行 cd - 命令提示未設置 OLDPWD 值時, cd $OLDPWD 命令沒有報任何錯;實際上,它把當前的工作目錄改變到用戶的 home 目錄里。

          那是因為 OLDPWD 變量目前還沒有被設置, $OLDPWD 僅僅是一個空字符串。因此, cd $OLDPWD 命令跟 cd 命令的執行結果是一致的,默認情況下,會把用戶當前的工作目錄切換到用戶的 home 目錄里。

          最后,我還遇到過這樣的要求,需要讓 cd - 命令執行的結果不顯示出來。我的意思是,有這樣的情況(比如說,在寫 shell 腳本的時候),你想讓 cd - 命令的執行結果不要把目錄信息顯示出來。那種情況下,你就可以使用下面的命令方式了:

          cd - &>/dev/null

          上面的命令把文件描述符 2(標準輸入)和 1(標準輸出)的結果重定向到 /dev/null 目錄。這意味著,這個命令產生的所有的錯誤不會顯示出來。但是,你也可以使用通用的 $? 方式來檢查這個命令的執行是否異常。如果這個命令執行報錯, echo $? 將會返回 1,否則返回 0。

          或者說,如果你覺得 cd - 命令出錯時輸出信息沒有關系,你也可以使用下面的命令來代替:

          cd - > /dev/null

          這個命令僅用于將文件描述符 1 (標準輸出)重定向到 /dev/null 。

          總結

          遺憾的是,這篇文章僅包含了一個跟命令行相關的小技巧,但是,我們已經地對 cd - 命令的使用進行了深入地探討。建議你在自己的 Linux 系統的命令行終端中測試本文中的實例。此外,也強烈建議你查看 man 幫助文檔,然后對 cd 命令進行全面測試。

          如果你對這篇文章有什么疑問,請在下面的評論區跟大家交流。同時,敬請關注下一篇文章,我們將以同樣的方式探討更多有用的命令行使用技巧。

          預約申請免費試聽課

          填寫下面表單即可預約申請免費試聽!怕錢不夠?可就業掙錢后再付學費! 怕學不會?助教全程陪讀,隨時解惑!擔心就業?一地學習,可全國推薦就業!

          上一篇:Linux為什么不需要碎片整理
          下一篇:Linux系統命令行工具的使用技巧(二)

          拯救者Linux:我是如何給我的團隊引入Linux的

          Linux只有十三個字符的經典Fork炸彈

          騰訊十年運維老兵:運維團隊的五個“殺手锏”

          為您的Linux應用開發加油提速(二)

          • 掃碼領取資料

            回復關鍵字:視頻資料

            免費領取 達內課程視頻學習資料

          • 視頻學習QQ群

            添加QQ群:1143617948

            免費領取達內課程視頻學習資料

          Copyright ? 2021 Tedu.cn All Rights Reserved 京ICP備08000853號-56 京公網安備 11010802029508號 達內時代科技集團有限公司 版權所有

          選擇城市和中心
          黑龍江省

          吉林省

          河北省

          湖南省

          貴州省

          云南省

          廣西省

          海南省

          欧美做爰视频免费播放_做暖全过程免费的视频_性爱免费视频 百度 好搜 搜狗
          <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <文本链> <文本链> <文本链> <文本链> <文本链> <文本链>