爬了一些文章沒看到相關的東西
MD指令似乎僅能在目前目錄下建立資料夾...目前僅找到一次建立目錄根資料夾C:\a\b\c

假設目前CMD是在C:\,我想要指定E:\XXX\XXX這目錄下建立幾個資料夾
一定要先到E:\XXX\XXX慢慢建立資料夾嗎?

因為想封裝成BAT檔,BAT檔有辦法說建立資料夾時可手動寫檔名嗎
還是說僅能最後手動改檔呢?

===============================================

更新一下:

今天寫好了以後發現一件事情
那就是我忘記xcopy是外部指令,本以為每台XP都會有且可以用
卻出現xcopy is not recognized as an internal or external command
之後到其他網站去抓了xcopy.exe放入c:\windows\system32\
還是出現同樣狀況

小弟的xcopy指令後面有放環境變數
xcopy e:\ /s/y g:\new\


===================================================

更新:

感謝各位網友的熱心,但很遺憾的還是沒辦法成功
於是放棄...山不轉路轉去找VB來玩玩看

VB果然是門外漢也可以稍為摸一下的東西(你根本是網頁複製貼上改改路徑而已=口=)
一邊看微軟教學網頁教學一樣畫葫蘆作出來了
不過目前遇到幾個問題

1.
My.Computer.FileSystem.DeleteFile("C:\test.txt")
使用此指令若檔案不存在會跳出錯誤...目前正在找尋相關語法
檔案不存在會跳出提醒表示檔案已砍

2.
My.Computer.FileSystem.CopyDirectory("C:\TestDirectory1", "C:\TestDirectory2", True)

目前已成功,但是是背景作業無從得知複製了多少檔案、結束與否
也不知道此指令若是遇到目錄下本來就有檔案的會不會直接覆蓋掉

3.
不知道有無辦法創新資料夾時他會問請你命名
然後之後的語法會用你命名的資料夾下面創子目錄

EX: VB像新資料夾問命名---->命名為XXX---->新鍵資料夾A(不命名)到XXX\
複製檔案到XXX\A\
建立資料夾指令 mkdir

Ex: 在D槽下建議一個123資料夾

mkdir D:\123

這網路上很多教學 稍微找一下就有了

gigimmg wrote:
因為想封裝成BAT檔,BAT檔有辦法說建立資料夾時可手動寫檔名嗎

SET /P variable=[promptString]
☆ 私人訊息直接刪除不再回覆 ☆ 願望 : bovuhPPjMnEfkyhggnsJdABaLFPuhXT4
直接 mkdir E:\XXX\XXX\a\b\c\d\e 就可以了

Bowaa wrote:
直接 mkdir E:\XXX\XXX\a\b\c\d\e 就可以了


請問一下如果出現
xcopy is not recognized as an internal or external command
去其他網站抓xcopy.exe放windows\system32\
還是出現xcopy is not recognized as an internal or external command要怎麼辦呢

那行指令有環境變數
xcopy e:\ /s/y g:\new\

1. 確認你的系統到底有沒有 xcopy.exe (到 C:\Windows\ 底下搜尋 xcopy.exe)

2. 確認你的 PATH 環境變數包不包含 "C:\Windows\System32" (echo %PATH%),如果不包含,cmd 找指令時就不會到這個資料夾找

如果你的 "C:\Windows\System32" 有 xcopy.exe 但環境變數 PATH 裡沒 "C:\Windows\System32"

那就在你的 BAT 檔的前面加入底下這一行就可以了,你可以用 echo %PATH% 來看更改前和更改後的差別,看完你應該就會暸解這行指令的作用了

set PATH=%PATH%;C:\Windows\System32

Bowaa wrote:
1. 確認你的系統到底有沒有 xcopy.exe (到 C:\Windows\ 底下搜尋 xcopy.exe)
2. 確認你的 PATH 環境變數包不包含 "C:\Windows\System32" (echo %PATH%),如果不包含,cmd 找指令時就不會到這個資料夾找
如果你的 "C:\Windows\System32" 有 xcopy.exe 但環境變數 PATH 裡沒 "C:\Windows\System32"
那就在你的 BAT 檔的前面加入底下這一行就可以了,你可以用 echo %PATH% 來看更改前和更改後的差別,看完你應該就會暸解這行指令的作用了
set PATH=%PATH%;C:\Windows\System32


大哥您好

應該是系統有什麼特殊設定吧

1.有將XCOPY覆蓋到system32\下面過----無效

2.去網路抓環境變數登錄檔....無效(不給改)

3.用大哥說的BAT裡面最前面加上set PATH=%PATH%;C:\Windows\System32...無效

一樣跑xcopy is not recognized as an internal or external command
因為工作需要用...不想很麻煩的作機械動作搞一堆寫了個BAT檔(也只會簡單DOS-口-...
家裡電腦等其他電腦都可以用......那些電腦就是卡在XCOP T_T

難道要自己去找其他語言來寫了....


PS.動作只是 砍掉某個檔案,某槽備份出來、覆蓋回去
其實如果你的作業系統是 Vista 或之後的版本,你也可以改用 robocopy 的指令。

再不然,你也可以利用第三方軟體 fastcopy,它也有支援 command-line

John wrote:
其實如果你的作業系統是 Vista 或之後的版本,你也可以改用 robocopy 的指令。
再不然,你也可以利用第三方軟體 fastcopy,它也有支援 command-line


感謝大哥您的說明,試了一下還是不可以
於是放棄...山不轉路轉
去找了一下微軟的VB2010試用版來寫

VB果然是門外漢也可以稍為摸一下的東西(你根本是網頁複製貼上改改路徑而已=口=)
一邊看微軟教學網頁教學一樣畫葫蘆作出來了
不過目前遇到幾個問題

1.
My.Computer.FileSystem.DeleteFile("C:\test.txt")
使用此指令若檔案不存在會跳出錯誤...目前正在找尋相關語法
檔案不存在會跳出提醒表示檔案已砍

2.
My.Computer.FileSystem.CopyDirectory("C:\TestDirectory1", "C:\TestDirectory2", True)

目前已成功,但是是背景作業無從得知複製了多少檔案、結束與否
也不知道此指令若是遇到目錄下本來就有檔案的會不會直接覆蓋掉
雖然你已經換語言了,但我還是想問一下你的 PATH 環境變數內容為何?(打指令 echo %PATH% 就看得到了)

還有你的 C:\Windows\System32 底下究竟有沒有 xcopy.exe? xcopy.exe 的版本是多少? (右鍵 -> 內容 -> 版本)

如果你直接切換到 C:\Windows\System32 底下執行 xcopy.exe 可以執行嗎?

文章分享
評分
評分
複製連結

今日熱門文章 網友點擊推薦!