华南俳烁实业有限公司

考試首頁 | 考試用書 | 培訓(xùn)課程 | 模擬考場 | 考試論壇  
  當(dāng)前位置:Linux認(rèn)證 > 綜合輔導(dǎo) > 文章內(nèi)容
  

Linuxcd命令圖文詳解

 [ 2017年1月18日 ] 【

cd 命令是 *nix 系統(tǒng)中最基本的命令,它所做的事情是改變你當(dāng)前所在的目錄。本文詳細(xì)介紹該命令,它所能完成的功能以及關(guān)于該命令內(nèi)在的東西。

cd 命令:一個內(nèi)置命令
BASH Shell 是大多 Linux 發(fā)行版的默認(rèn) shell,BASH 有一些自己的內(nèi)置命令,cd 就是其中的一個。我將解釋什么是內(nèi)置命令,以及為什么 cd 是一個內(nèi)置命令。首先,用 SHELL 環(huán)境變量確認(rèn)你當(dāng)前的 shell:

現(xiàn)在用 which 命令檢查 cd 命令二進(jìn)制文件所在的路徑(如果存在的話):

結(jié)果什么都沒有輸出,這是因?yàn)橄到y(tǒng)中不存在 cd 命令的二進(jìn)制文件。但是你仍然可以運(yùn)行該命令,這是因?yàn)?cd 是 BASH 的內(nèi)置命令。內(nèi)置命令就是內(nèi)建在 shell 里的命令,另一個內(nèi)置命令 type 會給你顯示 cd 命令是一個內(nèi)置命令的信息:

如果你嘗試獲得任何內(nèi)置命令的幫助文檔,將不存在它們獨(dú)立的幫助頁:

對于這些內(nèi)置命令,不會創(chuàng)建獨(dú)立的進(jìn)程來運(yùn)行它們,因此他們運(yùn)行效率較高。

為了得到所有的內(nèi)置命令,你可以使用 help 命令(這里 help 本身也是一個內(nèi)置命令):

 

為什么 cd 是內(nèi)置命令
為了描述簡單,我就不討論更多的細(xì)節(jié)了,但是要理解這個問題的答案,還需要知道一點(diǎn) Unix 進(jìn)程相關(guān)的知識。

BASH 創(chuàng)建的任何進(jìn)程,它會由一個 BASH 的子 shell(當(dāng)前 BASH 進(jìn)程的子進(jìn)程)來執(zhí)行該進(jìn)程,新建的進(jìn)程運(yùn)行實(shí)例、輸出(如果需要的話),當(dāng)該進(jìn)程結(jié)束時,改子 shell 的任何屬性都不會返回給父 shell。注意到的是,cd 命令用來改變 shell 當(dāng)前所在的路徑,如果 cd 是一個外部命令,它將改變子 shell 的當(dāng)前路徑,當(dāng)運(yùn)行完返回時,他所做的改變對父 shell 沒有關(guān)系。因此,shell 的當(dāng)前路徑還是沒有改變!所有改變當(dāng)前 shell 環(huán)境的命令,在實(shí)現(xiàn)上都必須實(shí)現(xiàn)成內(nèi)置命令。如果實(shí)現(xiàn)成外部命令,我們將不會得到預(yù)期的結(jié)果。

下面我們探索 cd 命令的用法:

cd 命令用法
如果你直接輸入 cd 命令而不帶任何參數(shù),它將切換到你的 home 目錄下,不管你當(dāng)前所在的目錄是什么:

波浪線(~)符號也代表 home 目錄,你也可以使用它來切換到 home 目錄下:

本文糾錯】【告訴好友】【打印此文】【返回頂部
將考試網(wǎng)添加到收藏夾 | 每次上網(wǎng)自動訪問考試網(wǎng) | 復(fù)制本頁地址,傳給QQ/MSN上的好友 | 申請鏈接 | 意見留言 TOP
關(guān)于本站  網(wǎng)站聲明  廣告服務(wù)  聯(lián)系方式  站內(nèi)導(dǎo)航  考試論壇
Copyright © 2007-2013 中華考試網(wǎng)(Examw.com) All Rights Reserved
永泰县| 平定县| 赞皇县| 隆回县| 博罗县| 浮梁县| 高雄县| 错那县| 敦化市| 洛扎县| 沾化县| 中超| 华安县| 井研县| 施甸县| 乐安县| 溆浦县| 司法| 娄烦县| 常山县| 南城县| 丰都县| 邢台县| 东乡| 汾阳市| 手游| 杭锦后旗| 永定县| 清水河县| 宁城县| 体育| 略阳县| 临清市| 西城区| 仙桃市| 梅河口市| 安多县| 抚宁县| 克山县| 金溪县| 宁都县|