cd(change directory)是 Linux 終端機中使用頻率最高的指令,看似簡單卻暗藏許多提效細節。本文系統整理路徑表示法、特殊符號速記、符號連結穿透行為與環境變數跳轉技巧,助您在目錄樹中如魚得水。
cd [目錄路徑]
無參數時自動切換至 $HOME(通常為 /home/使用者名 或 /root)。
| 符號/寫法 | 含義 | 範例 |
|---|---|---|
/ | 根目錄 | cd / |
~ | 當前使用者家目錄($HOME) | cd ~/projects |
~user | 指定使用者家目錄 | cd ~admin |
. | 目前目錄 | cp /etc/nginx/nginx.conf . |
.. | 上一層目錄 | cd ../.. 往上兩層 |
- | 上一次工作目錄($OLDPWD) | cd - 來回切換 |
| 參數 | 行為差異 |
|---|---|
-L(預設) | 遇到符號連結,進入連結所指向的實體目標目錄 |
-P | 遇到符號連結,保持在符號連結路徑下(pwd 顯示連結路徑) |
$ mkdir -p /tmp/real_dir
$ ln -s /tmp/real_dir /tmp/link_dir
# 預設 -L 行為
$ cd -L /tmp/link_dir
$ pwd
/tmp/real_dir # 顯示實體路徑
# -P 行為
$ cd -P /tmp/link_dir
$ pwd
/tmp/link_dir # 保持符號連結路徑
cd - 雙目錄來回$ cd /etc/nginx/conf.d
$ cd /var/log/nginx
$ cd - # 回到 /etc/nginx/conf.d
$ cd - # 再回 /var/log/nginx
mkdir -p project/{src,test,doc}/{main,module}
cd project/src/main
BASE=/opt/apps
VER=2.3.1
cd "$BASE/myapp-$VER/config"
(cd /tmp && ls) # 結束後仍在原目錄
x(進入)權限,chmod +x dir。cd 僅接受單一目錄參數,多參數會報錯。cd "My Documents" 或 cd My\ Documents。cd 關鍵字快速調取過往路徑cd !$:重用上一條指令的最後一個參數(如 mkdir /a/b/c 後 cd !$ 直接進入)熟練掌握 cd 的各種路徑表示與跳轉技巧,是終端機操作流暢度的基石。建議將常用專案路徑加入 CDPATH 環境變數(export CDPATH=.:~:/opt/projects),即可在任意位置直接 cd 專案名 直達目標目錄。