Làm cách nào để thực hiện việc này đúng cách. Tôi đang cố gắng để đặt tên cho tập tin sql đang được sản xuất bởi mysqldump vào ngày và thời gian hiện tại. Tôi đã có một số nghiên cứu trên trang web này và đã tìm thấy mã tại đây: How to get current datetime on Windows command line, in a suitable format for using in a filename?tạo tệp sao lưu sử dụng ngày và giờ làm tên tệp
Cố gắng trộn mã với mã hiện tại của tôi và tôi đã đưa ra mã này. Tệp được đặt tên vào ngày và giờ hiện tại nhưng chỉ có tệp 1kb và không tạo tệp .sql. Nó được coi là một tập tin sql 7 kb.
@For /f "tokens=2-4 delims=/ " %%a in ('date /t') do @(set mydate=%%c-%%a-%%b)
@For /f "tokens=1-2 delims=/:" %%a in ('time /t') do @(set mytime=%%a%%b)
@echo mydate= %mydate%
@echo mytime= %mytime%
mysqldump -u root -p --add-drop-table --create-options --password= onstor >c:\%mydate%_%mytime%.sql
CẬP NHẬT Tôi không nghĩ rằng có một vấn đề với các lệnh mysqldump vì nó hoạt động tốt khi tôi làm điều đó theo cách này. Mã dưới đây chỉ sử dụng ngày làm tên tệp của nó.
@For /F "tokens=2,3,4 delims=/ " %%A in ('Date /t') do @(
Set Month=%%A
Set Day=%%B
Set Year=%%C
)
@echo DAY = %Day%
@echo Month = %Month%
@echo Year = %Year%
mysqldump -u root --add-drop-table --create-options --password= onstor >c:\%Day%-%Month%-%Year%.sql
Xin vui lòng trợ giúp, cảm ơn.
Tác vụ này có hoạt động trong 'cron' không? – fishcracker
Câu hỏi là cửa sổ cụ thể. – MxyL
Đối với Linux: '$ (ngày +% Y-% m-% d-% H.% M.% S)' phải NHƯNG cái gì cho WINDOWS? –