- #1
P
Professor_DOS
Neues Mitglied
Themenersteller
- Dabei seit
- 13.03.2007
- Beiträge
- 4
- Reaktionspunkte
- 0
Mit diesem Batch kann man z.B. Verzeichnisse mit Datumsangaben erstellen (2007.03.15_21.43.59) oder das Datum und die Uhrzeit in Logfiles schreiben (Programm am 15.03.2007 um 21:43:59 gestartet). Einfach den Text zwischen den ####### in eine TXT-Datei kopieren und die Datei in .bat umbenennen.
##################################################
@echo off
if %1==/? goto :HELP
goto :HELP_EX
:HELP
cls
echo.
echo ----------------------------------------------------------------------------
echo TIMESTAMP.BAT-HILFE TIMESTAMP.BAT-HELP Seite/page 1
echo ----------------------------------------------------------------------------
echo.
echo TIMESTAMP.BAT gibt folgende Variablen aus: / provide the following variables
echo.
echo Variable fuer Variablen-Name
echo --------------------------------------
echo TAG (day) %%TAG%%
echo MONAT (month) %%MONAT%%
echo JAHR (year) %%JAHR%%
echo.
echo STUNDE (hour) %%STUNDE%%
echo MINUTE (minute) %%MINUTE%%
echo SEKUNDE (second) %%SEKUNDE%%
echo.
echo Diese Variablen koennen von anderen DOS-Batches mit call timestamp.bat
echo verarbeitet bzw. abgerufen werden.
echo ----------------------------------------------------------------------------
echo.
echo Zur Hilfe-Seite 2 mit beliebiger Taste... / to page 2 with any key
pause >nul
cls
echo.
echo ----------------------------------------------------------------------------
echo TIMESTAMP.BAT-HILFE TIMESTAMP.BAT-HELP Seite/page 2
echo ----------------------------------------------------------------------------
echo.
echo.
echo Gueltige Regionale Einstellungen sind:
echo -----------------------------------------------
echo Deutsch (D) z.B. 13.03.2007 (TT.MM.JJJJ)
echo Englisch (GB) z.B. 13/03/2007 (TT/MM/JJJJ)
echo Englisch (USA) z.B. 3/13/2007 (MM/TT/JJJJ)
echo.
echo Viele Regionale Einstellungen verwenden eine der o.g. Formate des Datums.
echo Many regional settings are using above values.
echo.
echo Hilfe mit beliebiger Taste beenden... / exit help with any key...
pause >nul
exit
:HELP_EX
:: In diesem Programm verwendete Variablen: / used parameters
:: ----------------------------------------------------------------------------
:: COUNTER
:: RegioSet
:: DATUM
:: JAHR
:: MONAT
:: TAG
:: ZEIT
:: STUNDE
:: MINUTE
:: SEKUNDE
:: HINWEIS
:: ----------------------------------------------------------------------------
:: Dieses Programm erzeugt die Datei TIMESTAMP_INI.BAT im
:: selben Verzeichnis, in dem TIMESTAMP.BAT ausgefuehrt wird.
:: ------------------------------
:: This program is creating the file TIMESTAMP_INI.BAT in the same directory
:: were TIMESTAMP.BAT is executet.
set COUNTER=A
:COME_IN
if not exist TIMESTAMP_INI.BAT echo set RegioSet=D> TIMESTAMP_INI.BAT
call TIMESTAMP_INI.BAT
if not %RegioSet%==D if not %RegioSet%==GB if not %RegioSet%==USA echo set RegioSet=D> TIMESTAMP_INI.BAT
if not %RegioSet%==D if not %RegioSet%==GB if not %RegioSet%==USA goto :COME_IN
if %RegioSet%==D goto :LAND_D
if %RegioSet%==GB goto :LAND_GB
if %RegioSet%==USA goto :LAND_USA
:LAND_USA
set DATUM=%date:.=%
set JAHR=%DATUM:~10,4%
set MONAT=%DATUM:~4,2%
set TAG=%DATUM:~7,2%
set ZEIT=%time::=%
set STUNDE=%ZEIT:~0,2%
goto :BLANKCHK
:LAND_GB
set DATUM=%date:.=%
set JAHR=%DATUM:~6,4%
set MONAT=%DATUM:~3,2%
set TAG=%DATUM:~0,2%
set ZEIT=%time::=%
set STUNDE=%ZEIT:~0,2%
goto :BLANKCHK
:LAND_D
set DATUM=%date:.=%
set JAHR=%DATUM:~4,4%
set MONAT=%DATUM:~2,2%
set TAG=%DATUM:~0,2%
set ZEIT=%time::=%
set STUNDE=%ZEIT:~0,2%
goto :BLANKCHK
:BLANKCHK
if %STUNDE% LSS 1 goto 0_UHR
if %STUNDE% LSS 2 goto 1_UHR
if %STUNDE% LSS 3 goto 2_UHR
if %STUNDE% LSS 4 goto 3_UHR
if %STUNDE% LSS 5 goto 4_UHR
if %STUNDE% LSS 6 goto 5_UHR
if %STUNDE% LSS 7 goto 6_UHR
if %STUNDE% LSS 8 goto 7_UHR
if %STUNDE% LSS 9 goto 8_UHR
if %STUNDE% LSS 10 goto 9_UHR
goto AB_10UHR
:0_UHR
set STUNDE=00
goto MINUTE
:1_UHR
set STUNDE=01
goto MINUTE
:2_UHR
set STUNDE=02
goto MINUTE
:3_UHR
set STUNDE=03
goto MINUTE
:4_UHR
set STUNDE=04
goto MINUTE
:5_UHR
set STUNDE=05
goto MINUTE
:6_UHR
set STUNDE=06
goto MINUTE
:7_UHR
set STUNDE=07
goto MINUTE
:8_UHR
set STUNDE=08
goto MINUTE
:9_UHR
set STUNDE=09
goto MINUTE
:AB_10UHR
set STUNDE=%ZEIT:~0,2%
:MINUTE
set MINUTE=%ZEIT:~2,2%
set SEKUNDE=%ZEIT:~4,2%
if %COUNTER%==A goto 1
if %COUNTER%==B goto 2
if %COUNTER%==C goto 3
if %COUNTER%==D goto 4
if %COUNTER%==E goto :REGSET
1
if %JAHR%== goto :SETCOUN1
if %JAHR%==2006 goto :REGSETEX
if %JAHR%==2007 goto :REGSETEX
if %JAHR%==2008 goto :REGSETEX
if %JAHR%==2009 goto :REGSETEX
if %JAHR%==2010 goto :REGSETEX
:SETCOUN1
set COUNTER=B
echo set RegioSet=D> TIMESTAMP_INI.BAT
goto COME_IN
2
if %JAHR%== goto :SETCOUN2
if %JAHR%==2006 goto :REGSETEX
if %JAHR%==2007 goto :REGSETEX
if %JAHR%==2008 goto :REGSETEX
if %JAHR%==2009 goto :REGSETEX
if %JAHR%==2010 goto :REGSETEX
:SETCOUN2
set COUNTER=C
echo set RegioSet=GB> TIMESTAMP_INI.BAT
goto COME_IN
3
if %JAHR%== goto :SETCOUN3
if %JAHR%==2006 goto :REGSETEX
if %JAHR%==2007 goto :REGSETEX
if %JAHR%==2008 goto :REGSETEX
if %JAHR%==2009 goto :REGSETEX
if %JAHR%==2010 goto :REGSETEX
:SETCOUN3
set COUNTER=D
echo set RegioSet=USA> TIMESTAMP_INI.BAT
goto COME_IN
4
if %JAHR%== goto :SETCOUN4
if %JAHR%==2006 goto :REGSETEX
if %JAHR%==2007 goto :REGSETEX
if %JAHR%==2008 goto :REGSETEX
if %JAHR%==2009 goto :REGSETEX
if %JAHR%==2010 goto :REGSETEX
:SETCOUN4
set COUNTER=E
echo set RegioSet=D> TIMESTAMP_INI.BAT
goto COME_IN
goto REGSETEX
:REGSET
cls
echo ----------------------------------------------------------------------------
echo ZEIT-Einstellungen sind nicht richtig eingestellt.
echo regional settings are not running with timestamp.bat
echo.
echo ermittelter Wert fuer DATUM: / values finding out for date:
echo (dd.mm.yyyy) %TAG%.%MONAT%.%JAHR%
echo.
echo.
echo ermittelter Wert fuer ZEIT : / values finding out for time:
echo (hh:mm:ss) %STUNDE%:%MINUTE%:%SEKUNDE%
echo.
echo.
echo ----------------------------------------------------------------
echo Regionale Einstellungen anpasen
echo z.B.auf DEUTSCH, ENGLISCH (GB) oder ENGLISCH (USA) einstellen
echo ----------------------------------------------------------------------------
echo Mit beliebiger Taste Regionale Einstellungen oeffnen...
echo press any key to open regional and language settings...
pause >nul
if %COUNTER%==E goto :SET_SERVER
goto :SET_SERVER
if errorlevel 4 goto :SET_USA
if errorlevel 3 goto :SET_GB
if errorlevel 2 goto :SET_D
if errorlevel 1 goto :SET_SERVER
:SET_D
echo set RegioSet=D> TIMESTAMP_INI.BAT
goto :REGSETEX
:SET_GB
echo set RegioSet=GB> TIMESTAMP_INI.BAT
goto :REGSETEX
:SET_USA
echo set RegioSet=USA> TIMESTAMP_INI.BAT
goto :REGSETEX
:SET_SERVER
%windir%\System32\control.exe intl.cpl
EXIT
:REGSETEX
del TIMESTAMP_INI.BAT
##################################################
##################################################
@echo off
if %1==/? goto :HELP
goto :HELP_EX
:HELP
cls
echo.
echo ----------------------------------------------------------------------------
echo TIMESTAMP.BAT-HILFE TIMESTAMP.BAT-HELP Seite/page 1
echo ----------------------------------------------------------------------------
echo.
echo TIMESTAMP.BAT gibt folgende Variablen aus: / provide the following variables
echo.
echo Variable fuer Variablen-Name
echo --------------------------------------
echo TAG (day) %%TAG%%
echo MONAT (month) %%MONAT%%
echo JAHR (year) %%JAHR%%
echo.
echo STUNDE (hour) %%STUNDE%%
echo MINUTE (minute) %%MINUTE%%
echo SEKUNDE (second) %%SEKUNDE%%
echo.
echo Diese Variablen koennen von anderen DOS-Batches mit call timestamp.bat
echo verarbeitet bzw. abgerufen werden.
echo ----------------------------------------------------------------------------
echo.
echo Zur Hilfe-Seite 2 mit beliebiger Taste... / to page 2 with any key
pause >nul
cls
echo.
echo ----------------------------------------------------------------------------
echo TIMESTAMP.BAT-HILFE TIMESTAMP.BAT-HELP Seite/page 2
echo ----------------------------------------------------------------------------
echo.
echo.
echo Gueltige Regionale Einstellungen sind:
echo -----------------------------------------------
echo Deutsch (D) z.B. 13.03.2007 (TT.MM.JJJJ)
echo Englisch (GB) z.B. 13/03/2007 (TT/MM/JJJJ)
echo Englisch (USA) z.B. 3/13/2007 (MM/TT/JJJJ)
echo.
echo Viele Regionale Einstellungen verwenden eine der o.g. Formate des Datums.
echo Many regional settings are using above values.
echo.
echo Hilfe mit beliebiger Taste beenden... / exit help with any key...
pause >nul
exit
:HELP_EX
:: In diesem Programm verwendete Variablen: / used parameters
:: ----------------------------------------------------------------------------
:: COUNTER
:: RegioSet
:: DATUM
:: JAHR
:: MONAT
:: TAG
:: ZEIT
:: STUNDE
:: MINUTE
:: SEKUNDE
:: HINWEIS
:: ----------------------------------------------------------------------------
:: Dieses Programm erzeugt die Datei TIMESTAMP_INI.BAT im
:: selben Verzeichnis, in dem TIMESTAMP.BAT ausgefuehrt wird.
:: ------------------------------
:: This program is creating the file TIMESTAMP_INI.BAT in the same directory
:: were TIMESTAMP.BAT is executet.
set COUNTER=A
:COME_IN
if not exist TIMESTAMP_INI.BAT echo set RegioSet=D> TIMESTAMP_INI.BAT
call TIMESTAMP_INI.BAT
if not %RegioSet%==D if not %RegioSet%==GB if not %RegioSet%==USA echo set RegioSet=D> TIMESTAMP_INI.BAT
if not %RegioSet%==D if not %RegioSet%==GB if not %RegioSet%==USA goto :COME_IN
if %RegioSet%==D goto :LAND_D
if %RegioSet%==GB goto :LAND_GB
if %RegioSet%==USA goto :LAND_USA
:LAND_USA
set DATUM=%date:.=%
set JAHR=%DATUM:~10,4%
set MONAT=%DATUM:~4,2%
set TAG=%DATUM:~7,2%
set ZEIT=%time::=%
set STUNDE=%ZEIT:~0,2%
goto :BLANKCHK
:LAND_GB
set DATUM=%date:.=%
set JAHR=%DATUM:~6,4%
set MONAT=%DATUM:~3,2%
set TAG=%DATUM:~0,2%
set ZEIT=%time::=%
set STUNDE=%ZEIT:~0,2%
goto :BLANKCHK
:LAND_D
set DATUM=%date:.=%
set JAHR=%DATUM:~4,4%
set MONAT=%DATUM:~2,2%
set TAG=%DATUM:~0,2%
set ZEIT=%time::=%
set STUNDE=%ZEIT:~0,2%
goto :BLANKCHK
:BLANKCHK
if %STUNDE% LSS 1 goto 0_UHR
if %STUNDE% LSS 2 goto 1_UHR
if %STUNDE% LSS 3 goto 2_UHR
if %STUNDE% LSS 4 goto 3_UHR
if %STUNDE% LSS 5 goto 4_UHR
if %STUNDE% LSS 6 goto 5_UHR
if %STUNDE% LSS 7 goto 6_UHR
if %STUNDE% LSS 8 goto 7_UHR
if %STUNDE% LSS 9 goto 8_UHR
if %STUNDE% LSS 10 goto 9_UHR
goto AB_10UHR
:0_UHR
set STUNDE=00
goto MINUTE
:1_UHR
set STUNDE=01
goto MINUTE
:2_UHR
set STUNDE=02
goto MINUTE
:3_UHR
set STUNDE=03
goto MINUTE
:4_UHR
set STUNDE=04
goto MINUTE
:5_UHR
set STUNDE=05
goto MINUTE
:6_UHR
set STUNDE=06
goto MINUTE
:7_UHR
set STUNDE=07
goto MINUTE
:8_UHR
set STUNDE=08
goto MINUTE
:9_UHR
set STUNDE=09
goto MINUTE
:AB_10UHR
set STUNDE=%ZEIT:~0,2%
:MINUTE
set MINUTE=%ZEIT:~2,2%
set SEKUNDE=%ZEIT:~4,2%
if %COUNTER%==A goto 1
if %COUNTER%==B goto 2
if %COUNTER%==C goto 3
if %COUNTER%==D goto 4
if %COUNTER%==E goto :REGSET
1
if %JAHR%== goto :SETCOUN1
if %JAHR%==2006 goto :REGSETEX
if %JAHR%==2007 goto :REGSETEX
if %JAHR%==2008 goto :REGSETEX
if %JAHR%==2009 goto :REGSETEX
if %JAHR%==2010 goto :REGSETEX
:SETCOUN1
set COUNTER=B
echo set RegioSet=D> TIMESTAMP_INI.BAT
goto COME_IN
2
if %JAHR%== goto :SETCOUN2
if %JAHR%==2006 goto :REGSETEX
if %JAHR%==2007 goto :REGSETEX
if %JAHR%==2008 goto :REGSETEX
if %JAHR%==2009 goto :REGSETEX
if %JAHR%==2010 goto :REGSETEX
:SETCOUN2
set COUNTER=C
echo set RegioSet=GB> TIMESTAMP_INI.BAT
goto COME_IN
3
if %JAHR%== goto :SETCOUN3
if %JAHR%==2006 goto :REGSETEX
if %JAHR%==2007 goto :REGSETEX
if %JAHR%==2008 goto :REGSETEX
if %JAHR%==2009 goto :REGSETEX
if %JAHR%==2010 goto :REGSETEX
:SETCOUN3
set COUNTER=D
echo set RegioSet=USA> TIMESTAMP_INI.BAT
goto COME_IN
4
if %JAHR%== goto :SETCOUN4
if %JAHR%==2006 goto :REGSETEX
if %JAHR%==2007 goto :REGSETEX
if %JAHR%==2008 goto :REGSETEX
if %JAHR%==2009 goto :REGSETEX
if %JAHR%==2010 goto :REGSETEX
:SETCOUN4
set COUNTER=E
echo set RegioSet=D> TIMESTAMP_INI.BAT
goto COME_IN
goto REGSETEX
:REGSET
cls
echo ----------------------------------------------------------------------------
echo ZEIT-Einstellungen sind nicht richtig eingestellt.
echo regional settings are not running with timestamp.bat
echo.
echo ermittelter Wert fuer DATUM: / values finding out for date:
echo (dd.mm.yyyy) %TAG%.%MONAT%.%JAHR%
echo.
echo.
echo ermittelter Wert fuer ZEIT : / values finding out for time:
echo (hh:mm:ss) %STUNDE%:%MINUTE%:%SEKUNDE%
echo.
echo.
echo ----------------------------------------------------------------
echo Regionale Einstellungen anpasen
echo z.B.auf DEUTSCH, ENGLISCH (GB) oder ENGLISCH (USA) einstellen
echo ----------------------------------------------------------------------------
echo Mit beliebiger Taste Regionale Einstellungen oeffnen...
echo press any key to open regional and language settings...
pause >nul
if %COUNTER%==E goto :SET_SERVER
goto :SET_SERVER
if errorlevel 4 goto :SET_USA
if errorlevel 3 goto :SET_GB
if errorlevel 2 goto :SET_D
if errorlevel 1 goto :SET_SERVER
:SET_D
echo set RegioSet=D> TIMESTAMP_INI.BAT
goto :REGSETEX
:SET_GB
echo set RegioSet=GB> TIMESTAMP_INI.BAT
goto :REGSETEX
:SET_USA
echo set RegioSet=USA> TIMESTAMP_INI.BAT
goto :REGSETEX
:SET_SERVER
%windir%\System32\control.exe intl.cpl
EXIT
:REGSETEX
del TIMESTAMP_INI.BAT
##################################################