การใช้วันที่และเวลาในแบตช์ไฟล์เพื่อสร้างชื่อไฟล์
ฉันใช้งานโปรแกรมจากแฟ้มแบตช์ซึ่งเมื่อเสร็จสิ้นแล้วจะทำการสำรองข้อมูลอัตโนมัติของฐานข้อมูล MySQL ของฉัน ฉันต้องการแบตช์ไฟล์เพื่อสร้างการสำรองข้อมูลที่แตกต่างกันสำหรับการทำงานแต่ละครั้งดังนั้นฉันสามารถย้อนกลับได้ ชื่อไฟล์ที่ต้องการจะเป็น gnucash_shockwave-20121128210344.sql (รูปแบบวันที่ YYYY-MM-DD-HH-MM-SS) ฉันลองทำบางสิ่งที่บอกว่าลอง%DATE:~4%แล้ว%Date.Year%แต่ได้รับข้อผิดพลาดที่แจ้งThe system cannot find the specified path. หากฉันลบความพยายามในการประทับเวลาสคริปต์ทำงานได้ดี แต่เขียนทับข้อมูลสำรองก่อนหน้า นี่คือส่วนของรหัสที่ฉันพูดถึง: @REM *** EXECUTION *** echo. Starting backup... SET timestamp %DATE:~-4%%DATE:~4,2%%DATE:~7,2%%TIME% %mysqldir%\mysqldump -u %mysqluser% -p%mysqlpassword% -h %mysqlhost% -P %mysqlport% --databases --routines --verbose gnucash_shockwave > %BackupDir%\gnucash_shockwave-%timestamp%.sql echo.------------------------------------------------------ echo. Backup complete! ข้อเสนอแนะใด ๆ