Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @echo off
- :: This script automates the process of launching GnuCash, waiting for it to close,
- :: and then backing up its data files into a timestamped, password-protected zip file.
- ::
- :: If you'd prefer to launch this via a Desktop Shortcut, you might want to right-click
- :: it, select Properties and set it to "Run: Minimised" to keep it in the Task Bar.
- :: Start GnuCash and wait until closed
- echo Waiting for GnuCash to close before backing up the data . . .
- start "" /d "%USERPROFILE%\Documents" /wait "C:\Program Files (x86)\gnucash\bin\gnucash.exe"
- :: Backup data
- set "SRC_DIR=%USERPROFILE%\Documents\GnuCash"
- set "DST_DIR=X:\Storage\GnuCash"
- set "ZIP_EXE=C:\Program Files\7-Zip\7z.exe"
- set "PASSWORD=password123" || REM Set the 7-Zip password to encrypt the backups
- :: Get the current date and time in YYYY-MM-DD_HH-MM format
- for /f "tokens=2 delims==." %%I in ('wmic OS Get localdatetime /value') do set DT=%%I
- set "DATE_TIME=%DT:~0,4%-%DT:~4,2%-%DT:~6,2%_%DT:~8,2%-%DT:~10,2%"
- :: Create the destination directory if it doesn't exist
- if not exist "%DST_DIR%" mkdir "%DST_DIR%"
- :: Create a zip file containing all .gnucash files
- "%ZIP_EXE%" a -tzip -p%PASSWORD% "%DST_DIR%\%DATE_TIME%.zip" "%SRC_DIR%\*.gnucash"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement