Linux之cd命令


cd 命令,是 Change Directory 的縮寫,用來切換工作目錄。

特殊符號 作 用
~ 代表當前登錄用戶的主目錄
~用戶名 表示切換至指定用戶的主目錄
- 代表上次所在目錄
. 代表當前目錄
.. 代表上級目錄

概要

cd [-L|[-P [-e]]] [dir]

主要用途

  • 切換工作目錄至dir。其中dir的表示法可以是絕對路徑或相對路徑。
  • 若參數dir省略,則默認為使用者的 shell 變量HOME
  • 如果dir指定為~時表示為使用者的 shell 變量HOME.表示當前目錄,..表示當前目錄的上一級目錄。
  • 環境變量CDPATH是由冒號分割的一到多個目錄,你可以將常去的目錄的上一級加入到CDPATH以便方便訪問它們;如果dir/開頭那么CDPATH不會被使用。
  • shopt選項cdable_vars打開時,如果dirCDPATH及當前目錄下均不存在,那么會把它當作變量,讀取它的值作為要進入的目錄。

參數

dir(可選):指定要切換到的目錄。

選項

-L (默認值)如果要切換到的目標目錄是一個符號連接,那么切換到符號連接的目錄。
-P 如果要切換到的目標目錄是一個符號連接,那么切換到它指向的物理位置目錄。
-  當前工作目錄將被切換到環境變量OLDPWD所表示的目錄,也就是前一個工作目錄。

返回值

返回狀態為成功除非無法進入指定的目錄。

例子

cd    
cd /  
cd ~  
cd ..  
cd ../..  
cd !$

關於切換到上一個工作目錄的說明

cd -

cd ${OLDPWD}

關於CDPATH 定義一個基礎目錄

> export CDPATH=.:/etc # 加了點號
> mkdir /tmp/nginx
> cd /tmp
> cd nginx
# 先找當前目錄,所以當前位置在/tmp/nginx

> export CDPATH=/etc   #沒有加點號
> mkdir /tmp/nginx
> cd /tmp
> cd nginx
#當前位置在/etc/nginx

如果CDPATH存在值,那么優先在CDPATH中查找並進入第一個匹配成功的,如果全部失敗那么最后嘗試當前目錄。

關於cdable_vars

shopt -s cdable_vars

new_var='~/rumenz'

cd new_var

shopt -u cdable_vars

如果一個目錄名稱在環境中沒有,但是cdable_vars是開啟的狀態,如果你定義一個別名目錄,那cd也可以識別進入這個目錄。

注意

  • 該命令是 bash 內建命令,相關的幫助信息請查看help命令。

  • 建議您在編寫腳本的過程中如有必要使用cd命令時,請增加必要的注釋以用於提醒閱讀者當前工作目錄,以免出現諸如找不到文件這類問題的發生。

原文鏈接:https://rumenz.com/rumenbiji/linux-cd.html
微信公眾號:入門小站

linux常用命令速查手冊PDF下載

3669頁vim參考手冊PDF下載

阿里雲ECS運維Linux系統診斷PDF下載

Docker速查手冊PDF下載

Linux學習筆記【強悍總結值得一看】PDF下載

shell簡明教程PDF下載


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM