MS-DOS 中 CD 命令的執行邏輯(爲何有時候看起來沒有起做用)

MS-DOS 中 CD 命令的用法

CD 命令能夠改變咱們當前的工做目錄,直接輸入 CD 不加參數的話能夠顯示當前的目錄。輸入 cd /? 能夠看到關於 CD 命令的用法幫助,其餘 DOS 命令也相似,下面是 CD 命令的幫助說明:spa

顯示當前目錄名或改變當前目錄。

CHDIR [/D] [drive:][path]
CHDIR [..]
CD [/D] [drive:][path]
CD [..]

  ..   指定要改爲父目錄。

鍵入 CD drive: 顯示指定驅動器中的當前目錄。
不帶參數只鍵入 CD,則顯示當前驅動器和目錄。 # 注意,這裏說顯示驅動器和目錄,兩者分開說了

使用 /D 開關,除了改變驅動器的當前目錄以外,
還可改變當前驅動器。
...(後面的省略)

能夠看到 CD 命令就是直接在後面加路徑,例如,要進入 Download 目錄:code

C:\Users\AULA>  # 這是當前的工做目錄
C:\Users\AULA>cd Downloads
C:\Users\AULA\Downloads>

CD 命令爲何會看起來沒有起做用

那麼,若是咱們要進入 D 盤的一個目錄,例如:D:\BilibiliDownload,那麼咱們輸入:blog

 

C:\Users\AULA>cd d:BilibiliDownload  # 子目錄不用加斜槓 \ ,按 tab 鍵能夠自動補全
C:\Users\AULA
>

 

結果只是輸出了一個空行,貌似 CD 命令並無起到切換目錄的做用。事實上,CD 命令的做用是用於切換目錄,而在 MS-DOS 中,咱們的路徑是包含驅動器號與目錄的,兩者是不一樣的,這也就是在 CD 命令的幫助中爲何要將兩者分開講的緣由。class

上面這條命令執行後也沒有出現錯誤,事實上它也是起了做用的。這裏有兩個不一樣的地方:驅動器的當前目錄和咱們的工做目錄。在 MS-DOS 中,將每個磁盤驅動器都視爲一個單獨的目錄樹,每個驅動器均可以有一個當前目錄,而工做目錄就是 CMD 窗口左側的前綴 C:\Users\AULA>總結

能夠輸入 cd drive: 查看對應驅動器的當前目錄:tab

C:\Users\AULA>cd d:
D:\BilibiliDownload  # 驅動器 D: 的當前目錄

C:\Users\AULA>cd c:
C:\Users\AULA  # 驅動器 C: 的當前目錄

咱們以前的那條命令改變了驅動器 D: 的當前目錄,並無改變咱們的工做目錄,由於 CD 命令不能跨驅動器切換。能夠直接先輸入 D: 切換驅動器後,再用 CD 命令進入相應的目錄。或者添加參數 /D 強制切換工做目錄:di

C:\Users\AULA>cd /d d:\BilibiliDownload

d:\BilibiliDownload>

如今工做路徑已經成功切換到了 D 盤。co

總結

在 MS-DOS 中,CD 命令默認是在同一個目錄樹中切換工做路徑,Windows 中每個驅動器都是一個單獨的目錄樹,每一個驅動器都有一個當前目錄。直接輸入路徑跨驅動器訪問,只會改變對應驅動器的當前目錄,不會更改 CMD 的工做目錄,須要添加參數 /d 強制切換。磁盤

相關文章
相關標籤/搜索