BATch-Dateien - andere Kommandozeilentools

Auswahl weiterer Kommandozeilentools, die nicht zum Umfang von MS Windows gehören.

Liste weiterer Kommandozeilentools

In dieser Rubrik werden verschiedene Kommandozeilentools aufgelistet, die sich ebenso in Batch-Dateien verwenden lassen. Es sind zumeist Portierungen bekannter Unix-Kommandozeilentools oder aber Freeware für Windows.
Alle genannten Programme gehören nicht(!) zum Umfang von MS Windows.

WIP:

Beispiele: Mysql-DB dumpen

Mit diesem Skript werden Backups aller Mysql-Dbs einzeln und der gesamten DB gemacht. Anschliessend werden alte Dateien mit delage32 weggeräumt.

Anzupassen ist die CONFIG-Datei (s.u.).

@echo off
rem ======================================================================
::
:: Backup aller Mysql-DBs
::
:: erfordert:
:: mysql, mysqldump, gzip, delage32
::
rem ======================================================================

rem ------------------------------------------------------
::  CONFIG
rem ------------------------------------------------------
set about=Axels Mysql-Backup 2
call config_mysql.bat

rem ------------------------------------------------------
::  MAIN
rem ------------------------------------------------------
SET mydate=%date:~9,4%%date:~6,2%%date:~3,2%
SET mytime=%time:~0,2%%time:~3,2%%time:~6,2%
rem --- hahnax: Bugfix fuer Stunden <10: Leerzeichen in "0" umwandeln
SET mytime=%mytime: =0%
TITLE %about%
echo.
echo ===== %about% =====
echo.
date /t
time /t
echo --- Erstelle Backups in %dirBackup%:
rem for %%b in (%dblist%) do (
for /F "tokens=* skip=1" %%a in ('echo show databases ^| mysql %dbparams%' ) do (
        TITLE dumpe %%a ...
        echo dumpe %%a ...
        mysqldump %dbparams% %%a | gzip > "%dirBackup%\%%a_%mydate%_%mytime%.gz"
)
echo dumpe komplette Mysql-DB ...
mysqldump -A %dbparams%| gzip > "%dirBackup%\%dball%_%mydate%_%mytime%.gz"
rem %dump% -A %auth% >dump_%day%_all.sql


echo --- erzeugte Files in %dirBackup%:
dir "%dirBackup%\*_%mydate%_%mytime%.gz" | findstr "^[0-9]"

TITLE cleanup - %about%
echo --- Cleanup:
delage32 "%dirBackup%\*.*" 30
delage32 "%temp%\scs*.tmp" 1

TITLE fertig - %about%
echo.
time /t
echo --- Fertig - schliesse in 10 Sek.
ping -n 11 localhost >nul

rem ======================================================================

config_mysql.bat:
@echo off
rem ======================================================================
::
:: CONFIG for mysql backup and restore
::
rem ======================================================================

rem ------------------------------------------------------
::  CONFIG
rem ------------------------------------------------------
set dirBackup=f:\mysqlbkup\
set dbparams=-udumpuser -p[pw]
set dbparams=-uroot

set dball=_COMPLETE

:: Pfad fuer mysql-binaries, gzip, delage32 hinzufuegen:
set PATH=%PATH%;E:\DEV\wamp\bin\mysql\mysql5.1.36\bin


rem ======================================================================