Files
Projekcija/startup.bat

56 lines
1.9 KiB
Batchfile

@echo off
cls
set "TARGET=%USERPROFILE%\OneDrive\Namizje\Projekcija cerkev"
set "BACKUP_DIR=%TARGET%\backup"
:: Najprej preveri ali obstaja mapa Projekcija cerkev na USB (D:)
IF EXIST "D:\Projekcija cerkev" (
echo Mapa 'Projekcija cerkev' na USB pogonu obstaja.
:: 1. Ustvari backup obstoječe baze na namizju, če obstaja
IF EXIST "%TARGET%\songs.db" (
echo Ustvarjam backup baze...
if not exist "%BACKUP_DIR%" mkdir "%BACKUP_DIR%"
:: Pridobi timestamp (YYYYMMDD_HHMMSS)
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)
set "TS=%date:~10,4%%date:~4,2%%date:~7,2%_%time:~0,2%%time:~3,2%%time:~6,2%"
set "TS=%TS: =0%"
set "CURRENT_BACKUP=%BACKUP_DIR%\backup_%TS%"
mkdir "%CURRENT_BACKUP%"
if exist "%TARGET%\settings.conf" copy "%TARGET%\settings.conf" "%CURRENT_BACKUP%\" >nul
if exist "%TARGET%\songs.db" copy "%TARGET%\songs.db" "%CURRENT_BACKUP%\" >nul
echo Backup ustvarjen v: %CURRENT_BACKUP%
:: 2. Ohrani samo zadnjih 6 backupov (pobriši starejše)
pushd "%BACKUP_DIR%"
for /f "skip=6 delims=" %%F in ('dir /b /ad /o-n backup_*') do (
echo Brisanje starega backupa: %%F
rd /s /q "%%F"
)
popd
)
echo Kopiram nove datoteke z USB na namizje...
:: Kopiranje z robocopy (/E - vse podmape, /XO - samo novejše datoteke, da ne povozimo backupa če ni treba)
robocopy "D:\Projekcija cerkev" "%TARGET%" /E
echo Zagon projector.py ...
pushd "%TARGET%"
python projector.py
popd
) ELSE (
cls
echo USB ključek ni najden. Zagon lokalne verzije...
echo Zagon projector.py ...
pushd "%TARGET%"
py "projekcija\projector.py"
popd
)
pause