Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Win98 Batch - Datum ermitteln und die Variable splitten in tag,mon,jahr

Frage Entwicklung Batch & Shell

Mitglied: Tiliman

Tiliman (Level 1) - Jetzt verbinden

06.11.2013, aktualisiert 07.11.2013, 2391 Aufrufe, 17 Kommentare, 2 Danke

Leider habe ich kein Win98, soll aber eine Prozedur schreiben, die in Variablen Tag, Monat, Jahr, Zeit (hh mm) enthält.
Die Var. %date% gibt es wie es scheint nicht.
Dies habe ich umschifft, indem ich dies in ein file geschrieben und dann ausgelesen habe.
in datum.txt steht die 1. Zeite des Kommandos date
Die Var ist gefüllt mit tt.mm.jjjj und dies muß aufgesplittet werden.
Hat jemand Win98 und kann dies testen oder so ändern, dass es geht? mit Datum hab ichs geschafft.
Mit Zeit geht es vermutlich analog. Dies habe ich aber noch nicht begonnen.
Wenn mir jemand hier helfen könnte, wär das schön.
Soweit bin ich mit schmöckern im Internet bereits gekommen:

01.
echo off 
02.
echo. | date | find /i "aktuelles" > datum.txt 
03.
type datum.txt  
04.
 
05.
type datum.txt | findstr /v "^#" 
06.
rem der 3. Wert nach Trennzeichen Blank in Variable d 
07.
rem Trennzeichen .  wär schön, wird aber abgewiesen. 
08.
 
09.
for /F "tokens=3,3 delims= " %%a in ('type datum.txt ^| findstr /v "^#"') do (   
10.
        set d=%%a 
11.
12.
@echo Variable d  xxx%d%xxx 
13.
echo. 
14.
 
15.
rem ab hier beisst es aus: ich weiß nicht, ob Substring-Kommandos unter Win98 laufen. 
16.
rem unter Win7 geht es so. 
17.
set tag=%d:~0,2% 
18.
set mon=%d:~3,2% 
19.
set jar=%d:~6,4% 
20.
@echo Tag Mon Jahr xxxx%tag%xxx%mon%xxx%jar%xxx 
21.
del datum.txt 
22.
:eof 
23.
pause
hier die Ausgabe unter Win7
E:\>echo off 
Aktuelles Datum: 06.11.2013 
Aktuelles Datum: 06.11.2013 
 
Variable d  xxx06.11.2013xxx 
 
Tag Mon Jahr xxxx06xxx11xxx2013xxx 
Drücken Sie eine beliebige Taste . . .
Das schließen der DOS-Box geht in Win98 offensichtlich ebenfalls nicht.
Mitglied: Lochkartenstanzer
06.11.2013, aktualisiert um 23:09 Uhr
Ohne Win98 zum Testen wird das nichts. Da solltest Du die paar Kröten investieren.

Ich habe zwar noch Win98 in eine Krustelkiste herumliegen, aber aktuell keinen Rechner, (oder VM), auf dem das gerade verfügbar ist. Vielen anderen wird es genauso gehen, daß sie deswegen nicht anfangen wieder Win98 zu installieren. Da wird das einfachste sein, daß Du (oder Deine Brötchengeber) Dir eine Version kaufst/kauft.

lks
Bitte warten ..
Mitglied: Endoro
06.11.2013 um 23:16 Uhr
Hi,
unter win9x gibt es weder for /f noch set var=%var:a=b%.
Unter NT-Versionen kannst du das mit setlocal disableextensions testen.
lg
Bitte warten ..
Mitglied: pieh-ejdsch
07.11.2013 um 09:02 Uhr
moin,
vielleicht gehts mit der Zerbröselten Ausgabe
01.
cmd /u /c "date <nul |find "A"" |find /v "" >datei.txt
Nach der Entsprechenden Zeile den Datumbestandteil mit for rauspicken und anschliessend zusammensetzen.

Gruß Phil
Bitte warten ..
Mitglied: colinardo
07.11.2013, aktualisiert um 11:12 Uhr
Hallo Tilimann,

Grüße aus dem Jenseits :

b176af94c3da70a746630fb5b1f333db - Klicke auf das Bild, um es zu vergrößern

hab mal einiges probiert ... Fehlanzeige, Batch war damals doch noch sehr beschränkt ... hier mal ein Ausschnitt:

9e0a89a63e0b303e4af8d4da9ecb7887 - Klicke auf das Bild, um es zu vergrößern

auch eine Eingabeumleitung an Date bringt die Shell zum Absturz =8-)

@pieh-ejdsch
Für cmd war damals noch command das equivalent
Das schließen der DOS-Box geht in Win98 offensichtlich ebenfalls nicht.
mit exit gehts im Test, es muss in den Eigenschaften der DOS-Box das Häkchen "Beim Beenden schließen" gesetzt sein.

Wird also Zeit das Ihr die 98er Kiste in die ewigen Jagdgründe schickt !

Grüße Uwe

Alternative: verwende eine drittanbieter-exe die das Datum und die Zeit passend ausgibt.
Bitte warten ..
Mitglied: Lochkartenstanzer
07.11.2013, aktualisiert um 11:46 Uhr
Zitat von colinardo:
Alternative: verwende eine drittanbieter-exe die das Datum und die Zeit passend ausgibt.

@TO

Und vor allem: Installier Dir ein win98-Testsystem zum debuggen.

lks
Bitte warten ..
Mitglied: Tiliman
07.11.2013, aktualisiert um 22:37 Uhr
Hier bin ich wieder (Tiliman)
Danke für eure Bemühung.
Da ich nur diese eine Prozedur für enen Freund schreibe, der von Win keine Ahnung hat und nur seine Eisenbahnsteuerung auf diesem alten PC mit 1 GB Festplatte hat, habe ich auch keine Lust, Win98 auf meinem PC zu installieren.
Meine o.g. Prozedur werde ich mal testweise beim nächsten Treffen laufen lassen und schaun, was an Fehlern herauskommt.
Ich werde ihm eine Sicherungsprozedur einfachster Form erstellen.

1. ein Verzeichnis auf dem USB-Stick Sl-Sicherung
2. in diesem Verzeichnis 20 Unterverzeichnisse mit Namen 01 bis 20 (also bis zu 20 Sicherungen
2. in jedem Verzeichnis eine Prozedur zur Sicherung, die die Daten in dem Unterverz. Sl ablegt und gleichzeitig eine Rückholprozedur erstellt.
3. nach jeder Sicherung muß er das Verzeichnis umbenennen in das aktuelle Sicherungsdatum oder sich anderswo notieren
Die Struktur sieht dann nach der 1. Sicherung so aus:
Sl-Sicherung
01 mit Batch-Datei zur Sicherung und zum Rückholen
Sl Verzeichnis der gesicherten Daten
02 nur Batchdatei zum Sichern
03 nur Batchdatei zum Sichern
.......u.s.w.
Die DOS-Box muss er halt von Hand schliessen. Das Starten einer DOS-Box mit besonderen Parametern kann ich ihm nicht zumuten und ist auch nicht nötigl.
Im Alter von 74 Jahren und keine Ahnung von PC und Windows ist dies möchlicherweise problematisch.

Die Prozedur ist nicht schön. Sie muss noch etwas bereinigt werden, aber so etwa sieht sie aus.
01.
@echo . 
02.
@echo . 
03.
@echo Datum heute ist %d% Uhreit %h%:%mi%  
04.
@echo . 
05.
@echo . 
06.
@echo Beim Sichern muss das Eisenbahnprogramm Sl beendet sein 
07.
@echo sonst kommt eine Share-Verletzung (zu sichernde Dateien in Benuetzung) 
08.
 
09.
@echo . 
10.
pause 
11.
  
12.
@echo .  
13.
 
14.
 
15.
@xcopy C:\Sl Sl\ /E /I /C /Q /H /R /Y 
16.
 
17.
 
18.
set datei=SL-zurueck-holen.bat 
19.
@echo off 
20.
 
21.
@echo @echo off >%datei% 
22.
@echo @echo . >>%datei% 
23.
@echo @echo . >>%datei% 
24.
 
25.
@echo @echo Beim Sichern muss das Eisenbahnprogramm Sl beendet sein >>%datei% 
26.
@echo @echo sonst kommt eine Share-Verletzung (zu sichernde Dateien in Benuetzung) >>%datei% 
27.
 
28.
@echo @echo . >>%datei% 
29.
 
30.
@echo pause  >>%datei% 
31.
 
32.
@echo @echo .  >>%datei% 
33.
@echo @echo.  >>%datei% 
34.
 
35.
@echo xcopy Sl C:\Sl /E /I /C /Q /H /R /Y >>%datei% 
36.
@echo @echo . >>%datei% 
37.
@echo @echo Datenwiederherstellung wurde durchgefuehrt >>%datei% 
38.
@echo @echo . >>%datei% 
39.
  
40.
@echo pause >>%datei% 
41.
@echo exit >>%datei% 
42.
 
43.
@echo . 
44.
@echo . 
45.
@echo Die Datensicherung wurde durchgefuehrt 
46.
@echo . 
47.
 
48.
 
49.
pause 
50.
@echo . 
51.
 
52.
exit
[Edit Biber] Skizze mit den vielen @Echoes in Code-Tags gesetzt. [/Edit]
Bitte warten ..
Mitglied: pieh-ejdsch
08.11.2013 um 22:56 Uhr
moin,

Wenn denn soviele Probleme auftauchen müssen dies eben umschifft werden.
Die Sekunden werden daher unter den Tisch fallen.
Die Prozedur fürs setzen der Variablen sollte so zu lösen sein:
01.
@echo off 
02.
set File=Datetime.txt 
03.
del   %file% 2>nul 
04.
echo.>%file% 
05.
set   month=01 02 03 04 05 06 07 08 09 10 11 12 
06.
set   hours=13 14 15 16 17 18 19 20 21 22 23  
07.
set    days=24 25 26 27 28 29 30 31 
08.
set minutes=32 33 34 35 36 37 38 39 40 41 42 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 
09.
for %%Y in (%hours%) do dir %file% |find "%file%" |find ".20%%Y" >nul && set "YY=%%Y"  
10.
 rem erst den Mittelteil separieren, da dieser von Punkten Umschlossen ist 
11.
for %%M in (%month%) do dir %file% |find "%file%" |find ".%%M." >nul && set "MM=%%M"  
12.
 rem Mit Hilfe der zwei Punkte des Mittelteils den ersten Teil extrahieren 
13.
for %%D in (%month% %hours% %days%) do dir %file% |find "%file%"  |find "%%D.%MM%." && set "DD=%%D" 
14.
for %%h in (00 %month% %hours%) do dir %file% |find "%file%" |find " %%h:" >nul && set "HH=%%h" 
15.
for %%m in (00 %month% %hours% %days% %minutes%) do dir %file% |find "%file%"  |find ":%%m" >nul && set "Min=%%m" 
16.
del   %file% 
17.
echo( 
18.
echo Jahr:    %YY% 
19.
echo Monat:   %MM% 
20.
echo Tag:     %DD% 
21.
echo Stunde:  %HH% 
22.
echo Minute:  %min%
Gruß Phil
Bitte warten ..
Mitglied: Tiliman
09.11.2013 um 23:26 Uhr
Hallo pieh-ejdsch,
Während des Schreibens dieses Textes habe ich langsam die Vorgehensweise verstanden.
meine Datumsdatei Datum.txt enthält (ob auch in Win98 weiß ich nicht)

Aktuelles Datum: 09.11.2013
Aktuelle Zeit: 2:39:05,34 (bei einstelligen Stunden)

Warum gibt es keine Unstimmigkeit, wenn es einmal File groß geschrieben und dann file heißt?
Das Kommande echo.>%file% dachte ich ist wohl fehlerhaft. Es überschreibt Datum und Zeit.
Aber OhO - welch Überraschung, nicht der Inhalt der Datei, sondern der Inhalt der Ausgabe von "dir" wird hier ausgewertet. Es muss noch nicht mal eine Datei mit Namen Datum.txt vorhanden sein.
Rafiniert.
Jetzt suche ich das Jahr mit Maske 20xx im Bereich 13 - 23 (2013 ...)
Analog für Monat, Tag, Stunde, Minute die entsprechende Anzahl der Variablen.
Jetzt hoffe ich nur, dass unter win98 Tag und auch Minute immer 2-stellig sind. auch bei 01.12. oder 00:xx Uhr. In Win7 ist es richtig.

Ich schreibe hier so viel,
1. um damit anzugeben, dass ich deinen Weg verstanden habe
2. um anderen, die vielleicht überlegen, was diese Prozedur macht, dies zu erklären.
Die Prozedur braucht für die Abarbeitung mehr Zeit, als für die Sicherung.
Der xcopy auf diesem Schnecken-PC braucht schon einige Minuten. Ich dachte schon, entwas falsch gemacht zu haben. Vielleicht schränke ich auch die zu sichernden Dateien noch ein, wenn ich ermitteln kann, in welchen Dateien die Daten liegen. Der sichere Weg dürfte aber die Komplettsicherung sein, da ich das Programm weder kenne noch damit arbeite.

Wenn die Prozedur fertig ist, werde ich sie nochmas posten.
Besten Dank und Gruß

Tiliman
Bitte warten ..
Mitglied: Tiliman
10.11.2013 um 11:07 Uhr
Hallo pieh-ejdsch,
Die Datei %file% muss natürlich vorhanden sein.
Ein Test mit "dir" ergibt einen Ablauf von guten 9 Sekunden.
Ein Test, die Ausgabe von "dir" in eine Datei
und diese Datei mit "type" auswerten ergibt einen Ablauf von 6 Sekunden.
Auf den Schnecken-PC hochgerechnet, vielleicht ein wesentlicher Unterschied.
Wenn man die Ausgabe des "dir" in eine Variable bringen kann und dann die Variable mit "echo" auswertet, vielleicht ist der "echo" Befehl noch schneller.

Wenn "Endoro" recht hat, was ich annehme, dann kann nicht mit Substring-Befehlen gearbeitet werden.
Rein theoretisch sollte dies noch schneller gehen.
Dann müsste ich aber die Ausgabe dieser einen Zeile dir %file% | find "Datum" in eine Variable leiten können.
Zunächst werde ich auf dem Win98-PC den Test mit Substring einer beliebigen Variablen durchführen.
Bis dahin:
1. Sicherungsversion ist abgespeckt
2. Sicherungsversion die von dir mit der Änderung auf "type".
bis dahin
Gruß

Tiliman
Bitte warten ..
Mitglied: Tiliman
11.11.2013 um 19:21 Uhr
Hallo wieder,
und noch'n Problem mit den Prozeduren.
Die abgespeckte Prozedur ist jetzt im Einsatz und läuft.
Die Ordner 01 bis 10 sind eingerichtet. Die Sicherung und Rückholung laufen.
Für die bessere und neue Prozedur reicht der Speicherplatz für die Batchdatei (u.Variablen) nicht aus.
Die Speicheraufteilung ist wie folgt:
Gesamt Belegt ---frei
636------- 63 --------573 (K)
----0----------0------------0 (oberer Bereich)
----0----------0------------0 (Reserviert)
31744-------188--31556
in Config.sys kann doch Command.com /E:xxxx angegeben werden.
Welcher Wert ist hier sinnvoll? 1024 oder 2048 ?? oder doch nur 512 weil nur 573 frei sind?
Kann diese Config.sys im laufenden System eingestellt werden für den nächsten Boot?
Ich habe nich nicht nachgesehen, was dort steht und wo die config.sys abgespeichert ist.
Steht sie ganz primitiv auf Laufwerk C: oder in versteckten Bereichen?
Noch eine Idee:
Wenn die Prozedur in mehrere Batch-Dateien gesplittet ist, die sich nacheinander aufrufen, wird dann weniger Speicher benötigt? Ich habe die Befürchtung, dass nicht.

Tiliman grüßt alle armen geplagten Helfer.
Bitte warten ..
Mitglied: Tiliman
26.11.2013, aktualisiert um 20:25 Uhr
Hallo servus wieder (Letzte Meldung zu diesem Beitrag von mir)

Damit ist alles Erforderliche gelöst.
Die Erweiterung des Umgebungsbereiches werde ich noch versuchen.
Hier meine Lösung:
Sichern:
MS-DosBox in Taskleiste mit Einstellung: Ausführen in E:\ (USB-Stick)
Dort Eingabe
s Datum
Die Prozedur s sichert in Ordner Datum und dort die Rückholprozedur und sichert die Sicherungsprozedur.
Die Rückholprozedur kopiert die Daten nach C:
01.
@echo off 
02.
echo . 
03.
copy D:\s.bat E:\ 
04.
set ziel= E:\Sl-Sicherung\%1 
05.
if NOT exist E:\Sl-Sicherung mkdir Sl-Sicherung 
06.
if exist  %ziel% rmdir /S /Q %ziel% 
07.
mkdir %ziel% 
08.
set sich=%ziel%\Sl-Sicherungsdatum.txt 
09.
echo Eisenbahnprogramm Sl beendet??? 
10.
echo . 
11.
@pause 
12.
@echo . 
13.
echo gesichert wird mit Datum  %1 
14.
echo zurueckgeladene Daten haben Datum: %1 >%sich% 
15.
echo . 
16.
xcopy C:\Sl %ziel%\Sl\ /E /I /C /Q /H /R /Y 
17.
set holen=%ziel%\SL-zurueck-holen.bat 
18.
echo @echo off >%holen% 
19.
echo echo . >>%holen% 
20.
echo type %sich%  >>%holen% 
21.
echo echo . >>%holen% 
22.
echo echo Eisenbahnprogramm bendet???  >>%holen% 
23.
echo pause  >>%holen% 
24.
echo echo.  >>%holen% 
25.
echo xcopy Sl C:\Sl /E /I /C /Q /H /R /Y >>%holen% 
26.
echo echo . >>%holen% 
27.
echo echo Datenwiederherstellung ist fertig >>%holen% 
28.
echo echo Box schliessen 
29.
echo echo . >>%holen% 
30.
echo pause >>%holen% 
31.
echo exit >>%holen% 
32.
echo . 
33.
echo Sicherung ist abgeschlossen mit Datum: %1 
34.
echo . 
35.
pause 
36.
echo . 
37.
exit
Gruß
Tiliman
Bitte warten ..
Mitglied: pieh-ejdsch
21.12.2013 um 16:23 Uhr
moin Tiliman,

ich habe die Prozedur zur Erstellung der Variablen Tag, Monat, Jahr, Zeit (hh mm) nochmals überarbeitet.
Die Ausgabe des DIR war dann doch etwas anders als erwartet.
Ein verknüpfter Folgebefehl kann nicht angelegt werden, nur die Auswertung des Errorlevels ist möglich.
Choice.com wertet das Format des Datum sowie die erste Ziffer von Datum und Uhrzeit aus.
Die Größe der Variablenwerte in der Umgebung werden sehr beschränkt und daher die nicht nachher benötigten Variablen entsprechend zeitig genug gelöscht.
Zum Einsparen der Variablen sind die Dateinamen fest eingetragen.
Der Batch arbeitet zur Ermittlung der Variablen im %temp% Verzeichnis.
Nacher geht er wieder ins Gestartete Verzeichnis und löscht die Tempdateien.

Ob die Batch nun 20 Sekunden oder eine Minute benötigt ist doch auch egal. (hier war es nach einem Liedschlag fertig)

Eine gestartete Verknüpfung *.pif der Test.Batch mit der Einstellung in den Eigenschaften (Registerkarte Programm) mit der Befehlszeile
C:\WINDOWS\COMMAND.COM /y /k C:\TEST.BAT
lässt ein Zeilenweises Debugging der Batch zu.

Getestet unter einem Virtuell angelegten Windows 98:
01.
@echo off 
02.
ver|find "Windows 98" >nul 
03.
if errorlevel 1 goto :Error98 
04.
if Datum.==%1. goto :Datum 
05.
if Zeit.==%1. goto :Zeit 
06.
if Form.==%1. goto :Form 
07.
if BAT.==%1. goto :Beginn 
08.
if /?.==%1. goto :Hilfe 
09.
prompt $g 
10.
echo.|Date|find "A" 
11.
echo.|Time|find "A" 
12.
:: ++ File "%temp%\TempEin.txt"  
13.
echo.>"%temp%\TempEin.txt" 
14.
echo.exit>>"%temp%\TempEin.txt" 
15.
<"%temp%\TempEin.txt" command /k prompt cd $P |find ":" |find /v "exit" >"%temp%\TempBak.bat"  
16.
<"%temp%\TempEin.txt" command /k prompt $N |find ":" |find /v "exit" >>"%temp%\TempBak.bat"  
17.
if exist "%temp%\TempBat.bat" del "%temp%\TempBat.bat" 
18.
:: ++ File "%temp%\TempBat.bat"  
19.
copy %0 "%temp%\TempBat.bat" >nul 
20.
cd "%temp%" 
21.
C: 
22.
call TempBat BAT 
23.
call TempBak 
24.
:: -- Files Neues.bat Temp???.* 
25.
del "%temp%\Neues.bat" 
26.
del "%temp%\Temp???.*" 
27.
echo ----- Variablen ----- 
28.
echo 	JJ=%JJ% 
29.
echo 	MM=%MM% 
30.
echo 	TT=%TT% 
31.
echo 	HH=%HH% 
32.
echo 	 m=%M% 
33.
echo 	ss=%SS% 
34.
if not .%ms%==. echo 	ms=%ms% 
35.
if not .%wday%==. echo        Wday=%Wday% 
36.
echo. 
37.
echo Zeitstempel: %JJ%%MM%%TT%-%HH%%M%%SS% 
38.
rem Hier kommt Dein Programm zum sichern hin 
39.
rem oder das Sicherungsprogramm wird hier ausgeführt. 
40.
 
41.
 
42.
pause 
43.
exit 
44.
:Error98 
45.
echo Programm nur speziell fuer Windows 98 Optimiert. 
46.
goto :Ende 
47.
:Erfolg 
48.
 
49.
:Beginn 
50.
for %%i in (Wday JJ MM TT HH M SS ms Dateform) do set %%i= 
51.
:: ++ File TempAus.bat Neuses.bat 
52.
type nul>TempAus.bat 
53.
type nul>Neues.bat 
54.
echo.|Date|>TempEin.txt find "(" 
55.
echo exit >>TempEin.txt 
56.
<TempEin.txt command /k prompt call TempBat Form |find ":" >>TempAus.bat 
57.
echo.>>TempAus.bat 
58.
echo exit |command /k prompt call TempBat Datum $D |find "call" >>TempAus.bat 
59.
echo.>>TempAus.bat 
60.
echo exit |command /k prompt call TempBat Zeit $T |find "call"   >>TempAus.bat 
61.
echo.>>TempAus.bat 
62.
TempAus 
63.
goto :eof 
64.
 
65.
:Form 
66.
echo J|choice /s /n /c:%4 >nul 
67.
for %%i in (1 4 7) do if errorlevel %%i set D=%%i 
68.
:: +++ Var D D1 D4 D7 
69.
set D%D%=JJ 
70.
echo M|choice /s /n /c:%4 >nul 
71.
for %%i in (1 4 7) do if errorlevel %%i set D=%%i 
72.
set D%D%=MM 
73.
echo T|choice /s /n /c:%4 >nul 
74.
for %%i in (1 4 7) do if errorlevel %%i set D=%%i 
75.
set D%D%=TT 
76.
:: +++ Var D2 D3 
77.
set D2=%D4% 
78.
set D3=%D7% 
79.
:: --- Vars D4 D7 D 
80.
for %%i in (D4 D7 D) do set %%i= 
81.
set Dateform=%D1% %D2% %D3% 
82.
goto :Ende 
83.
 
84.
:Datum 
85.
:: +++ Var Datum 
86.
set %1=%3 
87.
if .==.%4 set %1=%2 
88.
:: +++ Var Wday 
89.
if not .==.%4 set Wday=%2 
90.
:: +++ Var T 
91.
echo %Datum% |choice /n /c:.,-\ >nul 
92.
if errorlevel 1 set T=. 
93.
if errorlevel 2 set T=, 
94.
if errorlevel 3 set T=- 
95.
if errorlevel 4 set T=\ 
96.
:: ++ File TempChk.bat TempEin.txt 
97.
echo.>TempEin.txt 
98.
echo.exit>>TempEin.txt 
99.
<TempEin.txt command /k prompt find "%%2 %%4%%2" $LTempIst.bat $G$GTempFlt.bat |find "find" |find /v "exit" >TempChk.bat  
100.
:: -- File TempEin.txt 
101.
del TempEin.txt 
102.
:Teil1A 
103.
:: +++ Var DF %D1% 
104.
set DF=%D1% 
105.
echo %Datum% |choice /n /c:1234567890 >nul 
106.
for %%i in (1 2 3 4 5 6 7 8 9 10) do if errorlevel %%i set %D1%=%%i 
107.
:: ++ File TempStx.bat 
108.
>TempStx.bat echo if %%%D1%%%==10 set %D1%=0 
109.
call TempStx 
110.
:Teil1B 
111.
:: ++ TempIst.bat TempFlt.bat 
112.
type nul>TempIst.bat 
113.
type nul>TempFlt.bat 
114.
>TempStx.bat echo set String=%%%DF%%% 
115.
:: +++ Var String 
116.
call TempStx 
117.
>>TempIst.bat for %%b in (0 1 2 3 4 5 6 7 8 9) do echo call TempCHK %D1% %String%%%b %Datum% 
118.
call TempIst 
119.
:: ++ File TempChk 
120.
ren TempChk.bat TempChk 
121.
>TempChk.bat echo set %%1=%%2 
122.
call TempFlt 
123.
del TempFlt.bat 
124.
del TempChk.bat 
125.
>TempStx.bat echo set FString=%%%D1%%% 
126.
:: --- Var Astring 
127.
set Astring= 
128.
:: +++ Var FString 
129.
call TempStx 
130.
:: +++ Var Next 
131.
set Next=Teil2A 
132.
echo :%Datum% |find ":%FString%%T%" >nul 
133.
if errorlevel 1 goto :plus2 
134.
:Teil2A 
135.
set DF=%D2% 
136.
del TempIst.bat 
137.
>>TempIst.bat for %%a in (0 1 2 3) do echo call TempCHK %D2% %%a %Datum% %%%D1%%%%T% 
138.
ren TempChk TempChk.bat 
139.
call TempIst 
140.
ren TempChk.bat TempChk 
141.
>TempChk.bat echo set %%1=%%2 
142.
call TempFlt 
143.
del TempFlt.bat 
144.
del TempChk.bat 
145.
>TempStx.bat echo set String=%%%DF%%% 
146.
:: +++ Var %D2% 
147.
call TempStx 
148.
del TempIst.bat 
149.
>>TempIst.bat for %%b in (0 1 2 3 4 5 6 7 8 9) do echo call TempCHK %D2% %String%%%b %Datum% %%%D1%%%%T% 
150.
ren TempChk TempChk.bat 
151.
call TempIst 
152.
ren TempChk.bat TempChk 
153.
>TempChk.bat echo set %%1=%%2 
154.
call TempFlt 
155.
del TempFlt.bat 
156.
del TempChk.bat 
157.
>TempStx.bat echo set FString=%%%D1%%%%T%%%%D2%%% 
158.
>>TempStx.bat echo set Astring=%%%D1%%%%T% 
159.
call TempStx 
160.
echo :%Datum% |find ":%FString%%T%" >nul 
161.
set Next=Teil3A 
162.
if errorlevel 1 goto :plus2 
163.
:Teil3A 
164.
set DF=%D3% 
165.
del TempIst.bat 
166.
>>TempIst.bat for %%a in (0 1 2 3) do echo call TempCHK %D3% %%a %Datum% %%%D1%%%%T%%%%D2%%%%T% 
167.
ren TempChk TempChk.bat 
168.
call TempIst 
169.
ren TempChk.bat TempChk 
170.
:: +++ Var %D3% 
171.
>TempChk.bat echo set %%1=%%2 
172.
call TempFlt 
173.
del TempFlt.bat 
174.
del TempChk.bat 
175.
>TempStx.bat echo set String=%%%DF%%% 
176.
call TempStx 
177.
del TempIst.bat 
178.
>>TempIst.bat for %%b in (0 1 2 3 4 5 6 7 8 9) do echo call TempCHK %D3% %String%%%b %Datum% %%%D1%%%%T%%%%D2%%%%T% 
179.
ren TempChk TempChk.bat 
180.
call TempIst 
181.
ren TempChk.bat TempChk 
182.
>TempChk.bat echo set %%1=%%2 
183.
call TempFlt 
184.
del TempFlt.bat 
185.
del TempChk.bat 
186.
>TempStx.bat echo set FString=%%%D1%%%%T%%%%D2%%%%T%%%%D3%%% 
187.
>>TempStx.bat echo set Astring=%%%D1%%%%T%%%%D2%%%%T% 
188.
call TempStx 
189.
set Next=Teilx 
190.
echo :%Datum%: |find ":%FString%:" >nul 
191.
if errorlevel 1 goto :plus2 
192.
:Teilx 
193.
:: --- Vars D1 D2 D3 String AString FString SubN SubMax T DF Next 
194.
for %%i in (D1 D2 D3 String AString FString SubN SubMax T DF Next) do set %%i= 
195.
del TempChk 
196.
goto :Ende 
197.
 
198.
:Plus2 
199.
:: +++ Vars SubN SubMax 
200.
set SubN=0 
201.
set SubMax=2 
202.
:Nummer 
203.
>TempStx.bat echo set String=%%%DF%%% 
204.
call TempStx 
205.
del TempIst.bat 
206.
>>TempIst.bat for %%x in (0 1 2 3 4 5 6 7 8 9) do echo call TempCHK %DF% %String%%%x %Datum% %AString% 
207.
ren TempChk TempChk.bat 
208.
call TempIst 
209.
ren TempChk.bat TempChk 
210.
>TempChk.bat echo set %%1=%%2 
211.
call TempFlt 
212.
del TempFlt.bat 
213.
del TempChk.bat 
214.
:: .... Zählschleife Durchgang 
215.
echo %SubN%|choice /n /c:0123456789 >nul 
216.
for %%i in (1 2 3 4 5 6 7 8 9 10) do if errorlevel %%i set SubN=%%i 
217.
if %subn%==%SubMax% for %%i in (%Next%) do goto :%%i 
218.
goto :Nummer 
219.
 
220.
:Zeit 
221.
@echo off 
222.
:: +++ Vars Zeit ms HH 
223.
set %1=%2 
224.
set ms=%3 
225.
type nul>TempFlt.bat 
226.
type nul>TempIst.bat 
227.
echo %Zeit% |choice /n /c:120 >nul 
228.
for %%i in (1 2 3) do if errorlevel %%i set HH=%%i 
229.
if %HH%==3 set HH=0 
230.
:: ++ File TempEin.txt 
231.
echo.>TempEin.txt 
232.
echo.exit>>TempEin.txt 
233.
<TempEin.txt command /k prompt find "%%2 %%4%%2" $LTempIst.bat $G$GTempFlt.bat |find "find" |find /v "exit" >TempChk.bat  
234.
:: -- File TempEin.txt 
235.
del TempEin.txt 
236.
>TempIst.bat type nul 
237.
>>TempIst.bat for %%h in (0 1 2 3 4 5 6 7 8 9) do echo call TempCHK HH %HH%%%h %Zeit% 
238.
call TempIst 
239.
ren TempChk.bat TempChk 
240.
>TempChk.bat echo set %%1=%%2 
241.
call TempFlt 
242.
del TempFlt.bat 
243.
del TempChk.bat 
244.
del TempIst.bat 
245.
>>TempIst.bat for %%M in (0 1 2 3 4 5) do echo call TempCHK M %%M %Zeit% %HH%:  
246.
ren TempChk TempChk.bat 
247.
call TempIst 
248.
ren TempChk.bat TempChk 
249.
>TempChk.bat echo set %%1=%%2 
250.
:: +++ Var M 
251.
call TempFlt 
252.
del TempFlt.bat 
253.
del TempChk.bat 
254.
del TempIst.bat 
255.
>>TempIst.bat for %%m in (0 1 2 3 4 5 6 7 8 9) do echo call TempCHK M %M%%%m %Zeit% %HH%: 
256.
ren TempChk TempChk.bat 
257.
call TempIst 
258.
ren TempChk.bat TempChk 
259.
>TempChk.bat echo set %%1=%%2 
260.
call TempFlt 
261.
del TempFlt.bat 
262.
del TempChk.bat 
263.
del TempIst.bat 
264.
>>TempIst.bat for %%S in (0 1 2 3 4 5) do echo call TempCHK SS %%S %Zeit% %HH%:%M%: 
265.
ren TempChk TempChk.bat 
266.
call TempIst 
267.
ren TempChk.bat TempChk 
268.
>TempChk.bat echo set %%1=%%2 
269.
:: +++ Var SS 
270.
call TempFlt 
271.
del TempFlt.bat 
272.
del TempChk.bat 
273.
del TempIst.bat 
274.
>>TempIst.bat for %%s in (0 1 2 3 4 5 6 7 8 9) do echo call TempCHK SS %SS%%%s %Zeit% %HH%:%M%: 
275.
ren TempChk TempCHK.bat 
276.
call TempIst 
277.
>TempChk.bat echo set %%1=%%2 
278.
call TempFlt 
279.
del TempFlt.bat 
280.
del TempChk.bat 
281.
del TempIst.bat 
282.
goto :Ende 
283.
:Hilfe 
284.
echo Sowas - noch keine Hilfe Vorhanden. 
285.
:Ende 
286.
:eof
Gruß Phil
Bitte warten ..
Mitglied: Tiliman
21.12.2013 um 19:50 Uhr
Hallo Phil,
danke für deine Mühe.
Soviel Prozedur mit so wenig Inhalt. - Bitte nicht auf dich beziehen. Beileibe nicht.
Ich will erklären, warum ich diesen Ausspruch hier mache:

Dieser besagte Herr hat soviel Verständnis von PC-Sachen, dass er mir bei meinem letzten Besuch noch nichtmal sagen konnte, auf welchen seiner vielen (geschenkten USB-Sticks) nun eigentlich die letzten Sicherungen drauf ist.

Ich habe diesem Bekannten einen Uralt-Laptop mit winXP für die Eisenbahnsteuerung eingerichtet. Da sind dann noch ca. 500 MB frei. Die Eisenbahnsteuerung benötigt ja nur Speicher im KB-Bereich. Dort läuft die von dir erstellte Prozedur ohne Speichermangel problemlos.
Damit kann er dann auch im Wohnzimmer (bei seiner Gattin sitzend) die Parameter der Eisenbahn anpassen und auf das effektive System mit USB-Stick übertragen. Ich überlege auch, ob ich ihm WinXP installieren soll, Ich habe ja noch 2 XP-Pro Lizenzen und die ISO Datei einschl. SP3 vorrätig.
Nur die Aktivierung hapert, da kein Internet vorhanden ist, aber da gibt es ja noch die Umgehung der Aktivierung über registry. Als abgekapseltes System sind ja auch weder Update noch Virenscanner erforderlich.
Dennoch werde ich - im eigenen Interesse - deine Prozedur durcharbeiten, sie zu verstehen versuchen, auf Win7 testen, und dann auf dem Win98 Rechner ausprobieren -
aber voraussichtlich erst im neuen Jahr (Weihnachten/Neujahr kommen viele Besuche, viele Feste).
Im Command-Fenster Win98 habe ich übrigens xms/ems Speicher auf 5120 eingestellt. Der Speicher reichte trotzdem nicht.

Alles Gute zu Weihnachten und Neujahr - und -
auf dass möglichst viele deiner Wünsche sich der Realität weitestgehend annähern.
Gruß Tiliman
.
Bitte warten ..
Mitglied: Lochkartenstanzer
21.12.2013 um 20:02 Uhr
Zitat von Tiliman:

Nur die Aktivierung hapert, da kein Internet vorhanden ist, aber da gibt es ja noch die Umgehung der Aktivierung über
registry

Für die Aktivierung reicht ein Telefonanruf. da braucht man kein internet und keine Krücken mit registry-Änderungen.

lks
Bitte warten ..
Mitglied: Tiliman
21.12.2013 um 21:31 Uhr
Hallo Iks,

ja, ich weiß,
ich hab es mit dem genannten PC und XP home (oder so) probiert. Der Laptop wurde ihm so geschenkt. Das Windows war nicht aktivert. Die Wartezeit war abgelaufen. Ich habs über Tel. versucht, und es hat nicht geklappt. Den WLAN-USB-Treiben konnte ich dann ebenfalls nicht mehr installieren.
Entweder war Windows tatsächlich geklaut oder schon auf einer anderen Hardware aktiviert und geht auch dann nicht, wenn die alte Hardware vernichtet ist.

Ich habe dann testweise mein Pro darauf installiert aber noch nicht aktivert. Den Tip mit registry hab ich erst danach erfahren, sonst wäre die Installation des Treibers möglich gewesen.
Wenn ihm das System so passt, dann werd ich es mit diesem WinXP Pro nochmals telefonisch versuchen. Ich hab ja 30 Tage Zeit.
Ggfs. - ich habe ja inzwischen einen WLAN-USB-Stick, dann muß ich eben den Treiber installieren und die Aktivierung über Internet versuchen oder nach Ablauf der Zeit doch anders aktivieren und dann den Treiber installieren. Es gibt ja auch ein Gültigkeitsprogramm von MS.

Gruß Tiliman
und frohe Weihnacht und gutes Neues Jahr
Bitte warten ..
Mitglied: Lochkartenstanzer
22.12.2013 um 12:53 Uhr
Zitat von Tiliman:

Die Wartezeit war abgelaufen. Ich habs über Tel. versucht, und es hat nicht geklappt. Den WLAN-USB-Treiben konnte ich dann
ebenfalls nicht mehr installieren.
Entweder war Windows tatsächlich geklaut oder schon auf einer anderen Hardware aktiviert und geht auch dann nicht, wenn die
alte Hardware vernichtet ist.

Vermutlich hat er eine OEM-version draufgebügelt bekommen, die nur auf der ursprüglichen Hardware ohen Aktivierung läuft. Bei anderen Geräten muß man dann eien gültige Lizenz eintippen und aktivieren. Das Dumme ist nur, die Lizenz muß genau zu der Product-IdD passen, die auf der Platte ist. Also gültige Linzenznumemr eintippen udn aktiveren udn gut ist.

lks

PS: Auf den Lizenzaufklebern steht normalerweise zu welchem Medium diese Nummer gehört, z.B. X11-47374 bei einem DELL-OEM-XP-Home.
Bitte warten ..
Mitglied: Tiliman
22.12.2013 um 22:25 Uhr
Hei Lochkartenstanzer,
Es war keine CD/DVD dabei, auf dem Laptop ist kein Aufkleber, der Laptop lag bei ihm schon lange auf Halde. Er weiss nicht mal mehr, von wem der Laptop stammt. Dieser Laptop wird wohl auf dem Müll landen, denn das Programm benützt aus undefinierbaren Gründen auf diesem Laptop nicht den ganzen Bildschirm. Also winXP vernichten und Laptop auf den Müll. Dann habe ich wieder 2 Lizenzen.
Er hat noch weitere Laptaps (mindestens einen mit Win2000 und Win98 als Dual-BS und 30 GB FP) zu Hause liegen. Auf diesem läuft das besagte Programm besser. Viellelicht läuft die Sicherungsprozedur auf Win2000 ohne Speichermangel.
Ich war wohl zu schnell mit den Überspielen. Ich hätte zuerst mit einem Programm die Lizenznummer auslesen und mit USB-WLan in mein Netzwert einbinden sollen. Ich habs nicht getan.
Geschehen ist geschehen.
Was solls, die Lizenzen für WinXP benötige ich sowieso nicht mehr.
Ich trauere nur meiner Schnelligkeit im Prinzip nach, nicht den Lizenzen.
Ich habe ja jetzt wieder eine neue Prozedur erhalten, die für Win98 optimiert sein soll und auch nur auf Win98 läuft. Die werd ich demnächst testen. Dann sehe ich weiter.

Herzliche Grüße

Tiliman
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

Information von nikoatit zum Thema Humor (lol) ...

Ähnliche Inhalte
Batch & Shell
gelöst (Batch) Datum Sortier-Mechanismus (19)

Frage von clragon zum Thema Batch & Shell ...

Batch & Shell
gelöst Batch Abfrage Vergleiche mit Variable goto (4)

Frage von Zunaras zum Thema Batch & Shell ...

Batch & Shell
gelöst Splitten in Batch. Wo liegt der Fehler!? (4)

Frage von Todybear zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Windows Server
DHCP Server switchen (25)

Frage von M.Marz zum Thema Windows Server ...

SAN, NAS, DAS
gelöst HP-Proliant Microserver Betriebssystem (14)

Frage von Yannosch zum Thema SAN, NAS, DAS ...

Grafikkarten & Monitore
Win 10 Grafikkarte Crash von Software? (13)

Frage von Marabunta zum Thema Grafikkarten & Monitore ...

Windows 7
Verteillösung für IT-Raum benötigt (12)

Frage von TheM-Man zum Thema Windows 7 ...