2013-05-17 60 views
0

我不是很擅長和不熟悉的語法,我一派,我仍然想不通:批處理文件代碼 - CMD的運行,但不是在.bat文件

@echo off 

for /f "tokens=1-5 delims=/" %d in ("%date%") do set curDate = _%d_%e 

"C:\WEBServer\MySQL\MySQL Server 5.5\bin\mysqldump.exe" --host="localhost" --user="root" --password=pass db > C:\WEBServer\MySQL\backup\db_%curDate%.sql 

echo Done! 

說:

C:\WEBServer>mySql.backup.bat 
dated_e was unexpected at this time. 

但在CMD

C:\WEBServer>for /f "tokens=1-5 delims=/" %d in ("%date%") do set curDate = _%d_%e 
C:\WEBServer>set curDate = _17_05 

所有我需要的是建立與當前的月份和日期,沒有一年的名稱一個MySQL轉儲文件相同的代碼....

請幫忙?

回答

0

試試這個:

@echo off 
for /f "tokens=1-5 delims=/" %%d in ("%date%") do set "curDate=_%%d_%%e" 
"C:\WEBServer\MySQL\MySQL Server 5.5\bin\mysqldump.exe" --host="localhost" --user="root" --password=pass db > C:\WEBServer\MySQL\backup\db_%curDate%.sql 
echo Done! 

在一個批處理文件,你需要爲循環變量雙%%

+0

它的工作!但我確實嘗試了雙倍之前...不知道我做錯了什麼......並感謝您修復'「curDate = _ %% d _ %% e」' – Elen