
「cd」就是 "Change Directory" 「切換目錄」的意思,這裡有很多細節要說。
首先先來基本的:

它就會把工作目錄切換到 C:\ 底下,但切換到 D:\ 底下呢?

怎麼會這樣?這是因為命令提示字元是繼承 DOS 的遺作,正確要這樣做,一個字都不能錯:

因為在 DOS 的年代硬碟很小,沒有切割磁碟區的意義,所以才會這麼麻煩,所以命令提示字元提供「/d」:

在這裡為了解釋方便都重開來做解說,若造成不方便敬請見諒。
另外來看 cd 另外一段說明,它的意思是說假設要切換到「Document and Settings」的資料夾:

依參數的意義,「and」和「Settings」會變成要給 cd 的參數,但原意不是這樣。而 cd 會特例不把空白當作參數,會判斷成有空白的資料夾。以下是正確的作法:

當然,跟 cd Document and Settings 的結果一樣。
cd 實在是太特殊了(後面會解釋為什麼),以上面為例:

它可以簡化成:

也只有 cd 和幾個基本指令可以這樣簡化,所以下次只要打「cd/d」後面直接接要的目錄就好了。
cd 的部分已經講完了,下一個是建立資料夾:

md 是縮寫,mkdir 才是完整的指令,但用 md 也沒差,好記為原則。實際操作是:

移除資料夾比較麻煩:

好,假設來移除一個底下有檔案的資料夾(空的資料夾就不舉例了):

咦?這也可以說是 DOS 遺留下來的產物。看看說明,所以:

結論:「rd」沒有辦法移除有檔案的資料,所以要用全部清除「/s」和不要詢問「/q」。使用上都直接用「rd /s /q」開始,很少人用「rd」來刪除了。
刪除檔案:

實際操作:

重點還是在參數,如「del /a」:
這之前在 dir 已經解檡過了,同理,「del /q」:
「del /s」:
「del /f」:
結論:直接用「del /f /q」開始,很少人用「del」來刪除了。
重新更名:

重新更名意義上就是移動到同一個資料夾,操作上要用 rename 或 move 都可以,在這裡就不舉例了。
移動檔案:

可以猜出要說什麼了吧?「move /y」

這其實只是更名的動作,而實務上要不要 /y 看情形而定。說明中有說 move 也可以移目錄,就不舉例了。
複製檔案:

可以猜出要說什麼了吧?「copy /y」

「/a」和「/b」進階時有可能會用到,另外「/v」不清楚它的檢查機制為何,聽聽就好。
很抱歉說明寫到後面越寫越少,但也沒什麼好再解釋了。這些指令不難發現都有特殊用法,實際上要花時間去熟悉,多用幾次就會記起來了。這章也有些東西輕描淡寫帶過,因為有些是往後才會教到,所以學到後面可以再回來看這章,會有多一層體認,說明也會更了解。
下一章:承先啟後
- 2012-09-11 初次發佈。
- 2017-07-12 更新成 Windows 10 的版本。
我運用了第12章的 at 技巧和本章的技巧寫了句:
回覆刪除at 00:00 md a
它回我: 新增一項工作
然後怎麼時間一到卻沒有建立資料夾
其實己經有在 00:00 執行
刪除但這不是 at 的問題
md 是 cmd.exe 的內部命令
如果對 Windows 的 Shell 下 md ,Windows 會不知道是什麼
正確的是要用 "at 00:00 cmd /c md a"
透過 cmd.exe 去執行 md
另外因為 cmd.exe 執行的目錄不一樣
很難去知道 at 跑出來的 cmd.exe 是在哪裡執行
所以建議改成 "at 00:00 cmd /c md C:\a"
用絕對路徑不要使用相對路徑
不好意思有個地方想不通想請教一下
回覆刪除del Thumbs.db /s /q /f /ah 與
del /s /q /f /ah Thumbs.db
的執行結果一樣,為什麼參數可以對調?
因為按照help的說明,檔名只能放在後面?
在大部分的指令中是可以變換位置的
刪除最主要還是給方便
其中檔案名稱大多可以變換位置
但下一章有一個指令 taskkill
如果要關閉 notepad.exe 就一定要放在 /im 後面
像 taskkill notepad.exe /im 就會出現錯誤
感謝解惑^^還有個問題想請教一下:
回覆刪除按照move的說明,若想同時移動兩個檔案,
則只要在兩個檔案之間加上逗號就行了,
但是我怎麼試都顯示:命令語法不正確。
是我會錯意了嗎?
MOVE [/Y | /-Y] [drive:][path]dirname1 dirname2
刪除幫版主回答,move 不能同時移動兩個檔案,這裡的dirname1 與 dirname2
對應的是 來源路徑與檔案名稱 目的路徑與檔案名稱
如果我要將 目前資料夾底下全部子資料夾內的大量檔案,
回覆刪除同時複製到 另一個指定路徑,該怎麼做呢?
只能一個一個檔案間用 "+" 連接嗎?
用萬用字元就可以了喔
刪除像是 copy *.txt C:\
就可以把副檔名為 .txt 的檔案移到 C:\ 底下
但我要的是...
刪除C:\a\1.txt
C:\a\2.txt
C:\b\1.txt
C:\b\2.txt
全部集中起來
而不是所有檔案都在同一位置
這個就不是一個 copy 就可以結束了,這個要用到 for
刪除for /r .\ %i in (*.txt) do copy "%i" .\
大概是這個樣子
同樣都是 1.txt 2.txt ,這樣for指令會自動覆蓋嗎?
刪除還是不知道怎麼改檔名...
回覆刪除move "舊檔名.txt" "新檔名.txt"
刪除REN "舊檔名.txt" "新檔名.txt"
刪除如果是要刪除大量"唯讀"資料夾
回覆刪除是用rd加什麼參數
rd /s /q
刪除這個指令很恐佈喔,請小心使用
這個刪掉就完全找不回來了,我去資源回收桶找過,不過就是隨便亂創的文字和文件檔,所以沒事=w=
刪除1. D:\a\b\c\d, 這就4個資料夾,每個資料夾裡面有一個檔案,,求刪除全部4個資料夾和裡面的檔案, 就是最後要這樣D:\ , 要安靜模式.
回覆刪除2. 可以同時移動2個檔案到一個資料夾裡?例 D盤有a.txt和b.txt, 想兩個同時移動到D盤的a資料夾去.試了很久都不行.
第一个问题可以用 rd /s /q D:\ 来删除
刪除第二个问题可以用 move a.txt b.txt D:\a\ 来搬移
也可以用万用字符 move *.txt D:\a\
C:\test內有test1 test2 test3 test4,4個資料夾,4個資料夾內各有同樣的4個檔案
回覆刪除我想把test這個資料夾內的所有檔案copy到C:\Users\user\desktop\新增資料夾
我打出的指令是: copy C:\test\test1+test2+test3+test4 C:\Users\user\desktop\新增資料夾
但他只有copy一個檔案在新增資料夾內, 請問怎樣的指令才是正確的?
我想把C:\ok移動到桌面並把同名資料夾給取代
回覆刪除指令:move /y C:\ok C:\Users\user\desktop
但卻出現"存取被拒"
當我把桌面上的同名資料夾刪除之後 就不會有這個問題
請問該如何更改指令?