cd — 切換工作目錄

切換 Shell 的當前工作目錄。

語法

cd [目錄]

常用選項

選項 說明 範例
~ 切換到家目錄(等同於 $HOME) cd ~
- 切換到上一個工作目錄 cd -
.. 切換到上一層目錄(父目錄) cd ..
../.. 切換到上兩層目錄 cd ../..
/ 切換到根目錄 cd /
/絕對路徑 切換到指定的絕對路徑 cd /var/log
相對路徑 從當前目錄切換到相對路徑指定的目錄 cd Documents/project

使用範例

範例 1:切換到家目錄

無論目前在哪個目錄,執行 cd 或 cd ~ 都會回到使用者的家目錄(/home/username)。

$ cd ~
執行後可用 pwd 確認已切換到 /home/username。
範例 2:切換到絕對路徑

使用從根目錄 / 開始的完整路徑,無論當前位置為何都能正確切換。

$ cd /etc/nginx
範例 3:切換到相對路徑

使用相對於當前目錄的路徑。假設目前在 /home/user,要進入 Documents 目錄。

$ cd Documents/project
範例 4:返回上一層(父目錄)

.. 代表父目錄,可連續使用多個 .. 往上多層。

$ cd ../..
範例 5:切換到上一個目錄

cd - 可快速切換回上一個工作目錄,類似瀏覽器的「上一頁」功能,非常實用。

$ cd -
/var/log
執行後會輸出目標目錄路徑,方便確認位置。
範例 6:確認當前目錄位置

切換後通常搭配 pwd 指令確認當前位置。

$ cd /usr/local/bin && pwd
/usr/local/bin

常見錯誤與排錯

bash: cd: /path/to/dir: No such file or directory
原因
指定的目錄不存在,或路徑中有錯字。
解法
使用 ls 確認目錄存在,或用 Tab 鍵自動補齊路徑避免拼字錯誤。
bash: cd: /root: Permission denied
原因
目標目錄不允許當前使用者進入(缺少執行 x 權限)。
解法
使用 sudo -i 或 sudo su 切換到 root,或改用有權限的帳號。
bash: cd: OLDPWD not set
原因
執行 cd - 時,Shell 尚未記錄上一個目錄(通常是剛開啟終端機)。
解法
先執行一次 cd 切換到任意目錄,之後 cd - 就可以正常使用。

延伸閱讀