Come faccio a farlo correttamente. Sto cercando di nominare il file sql che viene prodotto da mysqldump nella data e ora correnti. Ho già qualche ricerca in questo sito e ho trovato un codice qui: How to get current datetime on Windows command line, in a suitable format for using in a filename?genera il file di backup utilizzando la data e l'ora come nome file
Ho provato a mescolarlo con il mio codice attuale e mi è venuto in mente questo. Il file è denominato nella data e ora correnti ma è solo un file 1kb e non produce un file .sql. Si suppone che sia un file sql da 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
UPDATE Non credo che ci sia un problema con il comando mysqldump dal momento che funziona bene quando lo faccio in questo modo. Il codice seguente usa semplicemente la data come nome file.
@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
Si prega di aiuto, grazie.
Funzionerà in 'cron'? – fishcracker
La domanda è specifica per Windows. – MxyL
Per linux: '$ (data +% Y-% m-% d-% H.% M.% S)' right MA cosa per WINDOWS? –