在Linux文件系統(tǒng)上,可以使用切換目錄命令cd將shell會話切換到另一個目錄。cd命令的格 式非常簡單:
cd destination
cd命令可接受單個參數(shù)destination,用以指定想切換到的目錄名。如果沒有為cd命令指 定目標路徑,它將切換到用戶主目錄。
destination參數(shù)可以用兩種方式表示:一種是使用絕對文件路徑,另一種是使用相對文件 路徑。
接下來將分別闡述這兩種方法。這兩者之間的不同對于理解文件系統(tǒng)遍歷非常重要。
1. 絕對文件路徑
用戶可在虛擬目錄中采用絕對文件路徑引用目錄名。絕對文件路徑定義了在虛擬目錄結(jié)構(gòu)中 該目錄的確切位置,以虛擬目錄的根目錄開始,相當(dāng)于目錄的全名。
絕對文件路徑總是以正斜線(/)作為起始,指明虛擬文件系統(tǒng)的根目錄。因此,如果要指 向usr目錄所包含的bin目錄下的用戶二進制文件,可以使用如下絕對文件路徑:
/usr/bin
使用絕對文件路徑可以清晰表明用戶想切換到的確切位置。要用絕對文件路徑來切換到文件 系統(tǒng)中的某個特定位置,只需在cd命令后指定全路徑名:
christine@server01:~$ cd /usr/bin
christine@server01:/usr/bin$
注意,在上面的例子中,提示符中一開始有一個波浪號(~)。在切換到另一個目錄之后,這 個波浪號被/usr/bin替代了。CLI提示符正是用它來幫助你跟蹤當(dāng)前所在虛擬目錄結(jié)構(gòu)中的位置。 波浪號表明shell會話位于你的主目錄中。在切換出主目錄之后,如果提示符已經(jīng)進行了相關(guān)配置 的話,絕對文件路徑就會顯示在提示符中。
說明 如果你的shell CLI提示符中并沒有顯示shell會話的當(dāng)前位置,那是因為它并沒有進行相關(guān) 的配置。如果你希望修改CLI提示符的話,后面會告訴你如何更改配置。
如果沒有配置好提示符來顯示當(dāng)前shell會話的絕對文件路徑,也可以使用shell命令來顯示所 處的位置。pwd命令可以顯示出shell會話的當(dāng)前目錄,這個目錄被稱為當(dāng)前工作目錄。pwd命令 的用法如下:
christine@server01:/usr/bin$ pwd
/usr/bin
christine@server01:/usr/bin$
南昌APP開發(fā)公司百恒網(wǎng)絡(luò)開發(fā)工程師告訴大家個技巧 在切換到新的當(dāng)前工作目錄時使用pwd命令,是很好的習(xí)慣。因為很多shell命令都是在當(dāng) 前工作目錄中操作的,在發(fā)出命令之前,你應(yīng)該始終確保自己處在正確的目錄之中。
可以使用絕對文件路徑切換到Linux虛擬目錄結(jié)構(gòu)中的任何一級:
christine@server01:/usr/bin$ cd /var/log
christine@server01:/var/log$
christine@server01:/var/log$ pwd
/var/log
christine@server01:/var/log$
還可以從Linux虛擬目錄中的任何一級跳回主目錄:
christine@server01:/var/log$ cd
christine@server01:~$
christine@server01:~$ pwd
/home/christine
christine@server01:~$
但是,如果你只是在自己的主目錄中工作,經(jīng)常使用絕對文件路徑的話未免太過冗長。例如, 若已經(jīng)位于目錄/home/christine,再輸入下面這樣的命令切換到Documents目錄就有些繁瑣了:
cd /home/christine/Documents
幸好還有一種簡單的解決方法。
2. 相對文件路徑
相對文件路徑允許用戶指定一個基于當(dāng)前位置的目標文件路徑。相對文件路徑不以代表根目 錄的正斜線(/)開頭,而是以目錄名(如果用戶準備切換到當(dāng)前工作目錄下的一個目錄)或是 一個特殊字符開始。假如你位于home目錄中,并希望切換到Documents子目錄,那你可以使用cd 命令加上一個相對文件路徑:
christine@server01:~$ pwd
/home/christine
christine@server01:~$
christine@server01:~$ cd Documents
christine@server01:~/Documents$ pwd
/home/christine/Documents
christine@server01:~/Documents$
上面的例子并沒有使用正斜線(/),而是采用了相對文件路徑將當(dāng)前工作目錄從 /home/christine改為/home/christine/Documents,大大減少了輸入內(nèi)容。
另外,此例中還要注意的是,如果提示符經(jīng)過配置可以顯示出當(dāng)前工作目錄,它就會一直顯 示波浪號。這表明當(dāng)前工作目錄位于用戶home目錄之下。
技巧 如果你剛接觸命令行和Linux目錄結(jié)構(gòu),建議暫時先堅持使用絕對文件路徑。等熟悉了目 錄布局之后,再使用相對文件路徑。
可以在任何包含子目錄的目錄中使用帶有相對文件路徑的cd命令。也可以使用一個特殊字符 來表示相對目錄位置。
有兩個特殊字符可用于相對文件路徑中: ?
單點符(.),表示當(dāng)前目錄; ?
雙點符(..),表示當(dāng)前目錄的父目錄。 你
可以使用單點符,不過對cd命令來說,這沒有什么意義。在本章后面你會看到另一個命令 如何有效地在相對文件路徑中使用單點符。
雙點符在目錄層級中移動時非常便利。如果你處在在主目錄下的Documents目錄中,需要切 換到主目錄下的Downloads目錄,可以這么做:
christine@server01:~/Documents$ pwd
/home/christine/Documents
christine@server01:~/Documents$ cd ../Downloads
christine@server01:~/Downloads$ pwd
/home/christine/Downloads
christine@server01:~/Downloads$
雙點符先將用戶帶到上一級目錄,也就是用戶的主目錄,然后/Downloads這部分再將用戶帶 到下一級目錄,即Downloads目錄。必要時用戶也可用多個雙點符來向上切換目錄。假如現(xiàn)在位 于主目錄中(/home/christine),想切換到/etc目錄,可以輸入如下命令:
christine@server01:~$ cd ../../etc
christine@server01:/etc$ pwd
/etc
christine@server01:/etc$
當(dāng)然,在上面這種情況下,采用相對路徑其實比采用絕對路徑輸入的字符更多,用絕對路徑 的話,用戶只需輸入/etc。因此,只在必要的時候才使用相對文件路徑。
既然你已經(jīng)知道如何遍歷文件系統(tǒng)和驗證當(dāng)前工作目錄,那就可以開始探索各種目錄中究竟 都有些什么東西了。下一篇文章將介紹如何查看目錄中的文件。
本文僅限內(nèi)部技術(shù)人員學(xué)習(xí)交流,不得作于其他商業(yè)用途.希望此文對廣技人員有所幫助。原創(chuàng)文章出自:南昌APP開發(fā)公司-百恒網(wǎng)絡(luò) http://www.myforexfactory.net/app/index.html 如轉(zhuǎn)載請注明出處!