Forum » Programiranje » [bat datoteke] Trenutni datum in ura
[bat datoteke] Trenutni datum in ura
zhigatsey ::
Živjo,
Imam narejeno eno bat datoteko, ki mi naredi vbistvu en backup, ki je zip datoteka...
Za to uporabim tale stavek...
7z a -t7z backup.7z *
A bi se dalo nekako pripopati datoteki backup.7z še trenutni datum in uro, kot naprimer backup15022007_101752.7z ali kaj podobnega...
Hvala za odgovore
Imam narejeno eno bat datoteko, ki mi naredi vbistvu en backup, ki je zip datoteka...
Za to uporabim tale stavek...
7z a -t7z backup.7z *
A bi se dalo nekako pripopati datoteki backup.7z še trenutni datum in uro, kot naprimer backup15022007_101752.7z ali kaj podobnega...
Hvala za odgovore
zhigatsey ::
Malo komplicirano ampak deluje...
@echo off :: Format data time variables set TmpFile="%temp%.\tmp.vbs" echo> %TmpFile% n=Now echo>>%TmpFile% With WScript echo>>%TmpFile% .Echo "set year=" + CStr(Year(n)) echo>>%TmpFile% .Echo "set yr=" + Right(Year(n),2) echo>>%TmpFile% .Echo "set month="+ Right(100+Month(n),2) echo>>%TmpFile% .Echo "set day=" + Right(100+Day(n),2) echo>>%TmpFile% .Echo "set hour=" + Right(100+Hour(n),2) echo>>%TmpFile% .Echo "set min=" + Right(100+Minute(n),2) echo>>%TmpFile% .Echo "set sec=" + Right(100+Second(n),2) echo>>%TmpFile% .Echo "set dow=" + WeekDayName(Weekday(n),1) echo>>%TmpFile% .Echo "set dow2=" + WeekDayName(Weekday(n)) echo>>%TmpFile% .Echo "set iso=" + CStr(1 + Int(n-2) mod 7) echo>>%TmpFile% .Echo "set iso2=" + CStr(Weekday(n,2)) echo>>%TmpFile% End With cscript //nologo "%temp%.\tmp.vbs" > "%temp%.\tmp.bat" call "%temp%.\tmp.bat" del "%temp%.\tmp.bat" del %TmpFile% set TmpFile= set stamp=%year%-%month%-%day%_%hour%.%min%.%sec% :: Compressing files.... 7z a -t7z Backup%year%%month%%day%%hour%%min%%sec%.7z *
BigWhale ::
Dear Lord!
Ce se pa to ne da lazje, lepse in hitreje narediti, potem je pa cmd.exe se vecji drek, kot sem mislil, da je. ;>
Ce se pa to ne da lazje, lepse in hitreje narediti, potem je pa cmd.exe se vecji drek, kot sem mislil, da je. ;>
Ethical ::
Zakaj ne narediš tega z WBSkriptom?...Radoveden.
lp
lp
Unigraphic NX4, ME10.45 powered by AMD Opteron 165 DC, GPU X1900XT-R580
zerox ::
Del kode za datum malenkost krajše :) ...
for /F "tokens=2,3,4 delims=. " %%i in ('date/t') do set d=%%k-%%j-%%i for /F "tokens=1,2,3 delims=:. " %%i in ('time/t') do set t=%%i-%%j echo %d%-%t%
veteran ::
7z a -t7z backup`date +%Y%m%d%H%M%S`.7z *
ja, kot je že Kit omenil, cmd.exe je shitware crap, v vseh letih zadeva še ni nič boljša, zato si raje omisli bash (google cygwin)
ja, kot je že Kit omenil, cmd.exe je shitware crap, v vseh letih zadeva še ni nič boljša, zato si raje omisli bash (google cygwin)
Tomay ::
To sem pobral z ene strani in malo priredil.
@echo off
set backup="d:\moji dokumenti"
set backup_to=c:\_backup
:BKPREG
REM date /t returns Day_of_Week, Month, Day and year in our
REM Win2000 installation.
REM This depend on a date format and we need a small trick
REM to extract the format from "date" command.
for /f "tokens=1,2,3,4* delims=.:/- " %%i in ('date /t') do (
for /f "skip=1 tokens=2-4 delims=/-,()." %%x in ('echo.^|date') do (
set day=%%i&set %%x=%%j&set %%y=%%k&set yyyy=%%l))
for /f "tokens=1,2* delims=: " %%i in ('time /t') do (
set hh=%%i&set min=%%j )
REM After this mess, we have min,hh,day,dd,mm and yyyy envariables.
if exist %backup_to%\Test_%yyyy%_%mm%_%dd%.zip goto :end
if not %day% == pet goto else
echo Danes je petek, izvaja se varnostno kopiranje
c:\7zip\7za.exe a %backup_to%\Test_%yyyy%_%mm%_%dd% %backup%\* -tzip
echo Varnostno kopiranje je izvedeno
echo Brišem, stare varnostne kopije
REM Set old to one month ago
set mm=!%mm%
set mm=%mm:!0=%
set mm=%mm:!=%
set /a mm=%mm% + 100
set /a mm=%mm% - 2
if %mm% equ 100 set /a mm=112&set /a yyyy=%yyyy% - 1
set old=%yyyy%_%mm:~1,2%
del %backup_to%\*%old%*.zip
goto :end
:else
echo danes ni petek
:end
@echo off
set backup="d:\moji dokumenti"
set backup_to=c:\_backup
:BKPREG
REM date /t returns Day_of_Week, Month, Day and year in our
REM Win2000 installation.
REM This depend on a date format and we need a small trick
REM to extract the format from "date" command.
for /f "tokens=1,2,3,4* delims=.:/- " %%i in ('date /t') do (
for /f "skip=1 tokens=2-4 delims=/-,()." %%x in ('echo.^|date') do (
set day=%%i&set %%x=%%j&set %%y=%%k&set yyyy=%%l))
for /f "tokens=1,2* delims=: " %%i in ('time /t') do (
set hh=%%i&set min=%%j )
REM After this mess, we have min,hh,day,dd,mm and yyyy envariables.
if exist %backup_to%\Test_%yyyy%_%mm%_%dd%.zip goto :end
if not %day% == pet goto else
echo Danes je petek, izvaja se varnostno kopiranje
c:\7zip\7za.exe a %backup_to%\Test_%yyyy%_%mm%_%dd% %backup%\* -tzip
echo Varnostno kopiranje je izvedeno
echo Brišem, stare varnostne kopije
REM Set old to one month ago
set mm=!%mm%
set mm=%mm:!0=%
set mm=%mm:!=%
set /a mm=%mm% + 100
set /a mm=%mm% - 2
if %mm% equ 100 set /a mm=112&set /a yyyy=%yyyy% - 1
set old=%yyyy%_%mm:~1,2%
del %backup_to%\*%old%*.zip
goto :end
:else
echo danes ni petek
:end
Voodoo 4Ever
jan01 ::
Zdraven microsoftovega resource kit tools imaš now.exe, ki vrne datum v normalni/lipi obliki...
darkolord ::
batch fajli so en prazgodovinski ostanek is DOSa in danes ni več nobene potrebe po njih.
PowerShell:
[datetime]::now.tostring("backup{0:ddMMyyyy_hhmmss}.7\z")
PowerShell:
[datetime]::now.tostring("backup{0:ddMMyyyy_hhmmss}.7\z")
Zgodovina sprememb…
- spremenilo: darkolord ()
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | Avtomatizacija vpisa DNS IP naslovaOddelek: Pomoč in nasveti | 829 (694) | crniangeo |
» | batch fajl iz txt (strani: 1 2 )Oddelek: Programiranje | 9618 (8279) | b3D_950 |
» | cmd batch rename datoteke v datum,časOddelek: Programiranje | 1654 (1472) | Good Guy |
» | ping v batch.batOddelek: Programiranje | 1393 (1123) | bzp |
» | včerajšni datumOddelek: Programiranje | 1139 (1017) | ql000 |