Linux 命令按照來源方式,可分為兩種,分別是 Shell 內置命令和外部命令。所謂 Shell 內置命令,就是 Shell 自帶的命令,這些命令是沒有執行文件的;而外部命令就是由程序員單獨開發的,所以會有命令的執行文件。Linux 中的絕大多數命令是外部命令,而 cd 命令是一個典型的 Shell 內置命令,所以 cd 命令沒有執行文件所在路徑。
cd 命令的基本格式如下:
[root@localhost ~]# cd [相對路徑或絕對路徑]
除此之外,cd 命令后面可以跟一些特殊符號,表達固定的含義,如表 1 所示:
特殊符號 作 用
~ 代表當前登錄用戶的主目錄
~用戶名 表示切換至指定用戶的主目錄
- 代表上次所在目錄
. 代表當前目錄
.. 代表上級目錄
它們的用法分別是:
[root@localhost vbird]# cd ~
#表示回到自己的主目錄,對于 root 用戶,其主目錄為 /root
[root@localhost ~]# cd
#沒有加上任何路徑,也代表回到當前登錄用戶的主目錄
[root@localhost ~]# cd ~vbird
#代表切換到 vbird 這個用戶的主目錄,亦即 /home/vbird
[root@localhost ~]# cd ..
#表示切換到目前的上一級目錄,亦即是 /root 的上一級目錄的意思;
需要注意的是,在 Linux 系統中,根目錄確實存在 .(當前目錄)以及 ..(當前目錄的父目錄)兩個目錄,但由于根目錄是最頂級目錄,因此根目錄的 .. 和 . 的屬性和權限完全一致,也就是說,根目錄的父目錄是自身。
[root@localhost /]# cd -
#表示回到剛剛的那個目錄
如果你仔細觀察的話,不難發現,其實在 [root@localhost ~] 中,就已經指明了當前所在的目錄,通常剛登陸時會位于自己的主目錄中,而 ~ 就表示主目錄,因此也就有了通過使用 cd ~ 可以回到自己的主目錄。