在 linux 中,
cd
指令被稱為修改目錄指令,用來修改目前的工作目錄。
幫助
用
man
指令可以看到其幫助資訊。我本地是macOS看到是下面這個,隻是提示了是内建builtin指令。
![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLiAjM2EzLcd3LcJzLcJzdllmVldWYtl2PnVGcq5CO4o2a5ImNupmevwFN0cTMyUTMtUGall3LcVmdhNXLwRHdo9CXt92YucWbpRWdvx2Yx5yazF2Lc9CX6MHc0RHaiojIsJye.jpeg)
cd
是一個 shell 内置的,它的行為可能因 shell 而略有不同。 它使用 shell 環境變量來确定執行所需的資訊。
這個是centos系統看到的man資訊。
文法
指令的文法如下:
cd [OPTIONS] directory
複制
參數
該指令隻接受兩個很少使用的選項。
−L 這個是預設的,跟随符号連結。
−P 當指定此選項并試圖導航到指向某個目錄的符号連結時。
複制
- 在最簡單的形式下,當不帶任何參數地使用時,cd 會将您帶到您的家目錄。
- 在浏覽檔案系統時,可以使用 Tab 鍵自動完成目錄的名稱。 在目錄名的末尾添加一個斜杠是可選的。
- 若要切換到某個目錄,必須具有該目錄的可執行權限。
- pwd 指令允許您查找目前所在的目錄。
絕對路徑和相對路徑
指定要更改為的目錄時,可以使用絕對路徑名或相對路徑名。 絕對路徑或完整路徑從系統根 / 開始,相對路徑從工作目錄 / 開始。
預設情況下,當您登入到 Linux 系統時,您目前的工作目錄檔案夾設定為您的主目錄。 假設 Downloads 目錄存在于您的主目錄中,您可以通過使用該目錄的相對路徑導航到它:
比如
➜ ~ cd Music
複制
上面這個指令和下面這個指令是一樣的效果
cd /home/admin/Music
複制
簡而言之,如果路徑以斜杠(/)開頭,那麼它就是目錄的絕對路徑。
父目錄
在類 unix 作業系統上,目前的工作目錄用一個點表示
.
兩個點
..
,表示父目錄,其實父目錄就是該目錄的上一級目錄。程式設計中,有很多這樣的,都是由「parent」翻譯過來的。還有父類、父類的父類、超類等。
如果你輸入
cd .
,你會變成工作目錄,換句話說,指令什麼都不會做。
假設您目前位于 /usr/local/share 目錄中,要切換到 /usr/local 目錄(比工作目錄目錄高一級) ,您需要輸入:
$ cd ../
複制
要向上移動兩級到 /usr 目錄(父目錄的父目錄) ,可以運作以下指令:
$ cd ../..
複制
這是另一個例子。 假設您位于 /usr/local/share 目錄中,希望切換到 /usr/local/src。 你可以通過輸入
$ cd ../src
複制
切換到上一個工作目錄
要更改回前一個工作目錄,将 dash (-)字元作為參數傳遞給 cd 指令:
$ cd -
複制
切換到家目錄
要導航到您的假目錄,隻需鍵入 cd。 另一種直接傳回家目錄的方法是使用波浪号(~)字元,如下所示:
$ cd ~
複制
有空格的目錄
如果要更改的目錄名稱中有空格,則應在路徑周圍加上引号,或使用反斜杠(\)字元轉義空格:
比如我要切換到帶有空格的目錄。
$ cd Creative\ Cloud\ Files
複制
Note: 也可以敲完第一個單詞直接
tab
鍵,自動補全。
小結
現在,您應該已經很好地了解了什麼是目前的工作目錄
/
目錄,以及如何使用
cd
指令切換到不同的目錄。