Supportnet Computer
Planet of Tech

Supportnet / Forum / BS-Sonstige

Batch zur Datensicherung





Frage

Hallo Ich bräucht ne Batch, dir mir ne ein Verzeichnis mit dem aktuellen Datum erstellt und dort eine Datei hineinkopiert. Hab schon ein paar Sachen versucht, aber so richtig wills net. Hab hier nen PC mit DOS 6.20 Vielen Dank schon mal

Antwort 1 von Nessus

Hi,

schaue mal hier oder hier

HTH

Nessus

Antwort 2 von schorschi

Danke, aber das bringt mich nicht wirklich weiter..

Antwort 3 von schorschi

Ich hab hier in den Foren schon was gesehn, das so war:

set datum=21.11.02
mkdir %datum%

aber das geht unter DOS 6.20 anscheinend nicht...

Antwort 4 von Nessus

Hast Du Dir den 2 Link in der Antwort 1 mal genauer angesehen?
Dort steht allein in der TXT-Datei schon deine Lösung. Mit einem 2 Zeiler ist dir leider nicht geholfen.

Nessus

Antwort 5 von schorschi

Oh, stimmt... aber so richtig will das auch nicht. und so ganz blick ich da auch nicht durch..
kann mir einer sagen, warum das net geht?

@echo off
C:\datum.exe
call c:\m$m
del c:\m$m

E:
cd if exist \@%_jahr%\%_monat%\%_tag%\save.flg goto ende

xcopy \@savep\save.flg \@savep\%_jahr%\%_monat%\%_tag%\*.*
cd \@savep\%_jahr%\%_monat%\%_tag%

xcopy c:\alos\*.* @alos\*.* /m


Antwort 6 von maneich

Hallo,

hier ist eine Batch, die Dir das Datum nach belieben liefert.

Einfach als .bat abspeichern, Dateinamen vergeben (z.B. Datum)und dann einmal doppelt anklicken. Dann kannst Du lesen, was Du damit alles machen kannst.

Wenn Du nur das Datum brauchst, genügt der Aufruf
call datum a danach
md Dateinamen%a%, wenn Du außer dem Datum noch eine zusätzliche Bezeichnung einbringen willst oder
md %a% als Datei mit dem Namen des Datums.

Datum.bat
@echo off
cls
if %2'==loop' goto %2
if %2'==loop2' goto %2
if %2'==loop3' goto %2
set a2=%1
set a3=%2
set a4=%3
echo @Prompt For %%%%%%%%D In ($D) Do Call %0 : loop %%%%%%%%D>%TEMP%.\Tmp1.bat
%COMSPEC% /C%TEMP%.\Tmp1.bat.>%TEMP%.\Tmp2.bat
call %TEMP%.\Tmp2.bat
call %TEMP%.\Tmp4 a1
Echo ; | Choice /S /C:;%a1%; %0 : loop2,>%TEMP%.\Tmp1.bat
%TEMP%.\Tmp1.bat
:loop
Echo @Prompt Set %%%%1=_%3_ > %TEMP%.\Tmp3.bat
%COMSPEC% /C %TEMP%.\Tmp3.bat > %TEMP%.\Tmp4.bat
For %%C In (Call Goto:end) Do %%C %TEMP%.\Tmp4
:loop2
set a1=%0
for %%e in (x x1 x2) do set %%e=
If %4'==_' Shift
for %%e in (set shift) do %%e x=%x%%4
for %%e in (set shift) do %%e x=%x%%4
for %%e in (set shift) do %%e x=%x%%4
for %%e in (set shift) do %%e x1=%x1%%4
for %%e in (set shift) do %%e x1=%x1%%4
if %a3%'==1' for %%e in (shift shift shift goto:loop11) do %%e
shift
for %%C in (shift set) do %%C x2=%4
for %%C in (shift set) do %%C x2=%x2%%4
:loop11
for %%C in (shift set) Do %%C x2=%x2%%4
for %%C in (shift set) do %%C x2=%x2%%4
if not %a4%'==1' for %%e in (shift set goto:end1) do %%e x=%x%%x1%.%x2%
echo %a1% : loop3 01;Januar;02;Februar;03;Maerz;04;April;05;Mai;06;Juni;07; Juli;08;August;09;September;10;Oktober;11;November;12;Dezember;%1>%temp%\tmp.bat
For %%C In (Call Goto:end) Do %%C %temp%.\tmp.bat
:loop3
if %3==%x1% for %%e in (shift set goto:end1) do %%e x=%x% %4 %x2%
for %%e in (shift shift goto:loop3) do %%e
:end1
if not "%a2%"=="" goto end2
echo.
echo Ermittelt nur das aktuelle Datum
echo %%1 = Ausgabe-Variable fuer das Datum
echo %%2 = Jahresangaben leer oder 0 wenn Jahr ist 4-stellig / 1 ist 2-stellig
echo 0 nur angeben wenn %%3 aktiviert
echo %%3 = Monat leer ist Zahl / 1 ist Text
echo.
echo Aktuelles Datum: %x%
for %%e in (echo. pause goto:end3) do %%e
:end2
set %a2%=%x%
:end3
for %%e in (a2 a3 a4 a1 x x1 x2) do set %%e=
echo j|del %TEMP%.\Tmp*.bat
:end
cls

Antwort 7 von Fil

Hallo schorschi,

1. habe ein kleines Programm (15kb)gross,das das macht was du wilst.

2.Datum auslesen -->Verzeichnis erstellen und in dieses Verzeichnis wechseln.

3. wenn intresse hast schick ne Mail.

Grus Fil

schreibfehler ©Fil



Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: