strugglechen
Goto Top

Batchdatei Schreiben zur Zeiten bestimmung

Hallo liebe mit Admins,
ich würde gern eine Batchdatei schreiben und zwar sollte diese folgendes tun.

Ich habe mir den Timestamp von einem AD gezogen nur leider ist der nicht so ohne weiteres leserlich da er 8 bit kodiert ist
jetzt würde ich die Datensätze die ich alle schon in einer Textdatei habe gern auslesen

Meine Datensätze sehen so aus 128623011241300000


C:\>w32tm /ntte 128623011241300000

148869 05:25:24.1300000 - 2008/08/04 07:25:24 AM


wenn ich den Befehl ausgebe sehe ich auch den Letzten Login des Users
ist ein Beispieldatensatz


jetzt brauche ich nur noch eine Batchdatei die mir auf meine txtdatei wo die ganzen Zahlenwerte untereinander stehen
einen Loop macht und es immer mit dem Befehl ausführt
ich bekomm es nur irgendwie nicht hin

wäre für jede Hilfe Dankbar

ps:hab schon einmal angefangen

for /F %f in (c:\logon.txt) do (
w32tm /ntte /F %f
echo %%f

)

Wie gebe ich die Zahlen als Variable an?
also das er durch jede Zeile geht

die Ausgabe soll dann in eine andere txt datei erfolgen wo die Zahl steht

128623011241300000,2008/08/04 07:25:24 AM

als Beispiel für den oberen Fall


mfg Strugglechen

Content-ID: 184013

Url: https://administrator.de/contentid/184013

Ausgedruckt am: 23.11.2024 um 02:11 Uhr

106009
106009 24.04.2012 um 12:29:03 Uhr
Goto Top
Hi,

wenn ich dich recht verstehe, möchtest du das Ergebnis des Befehls in eine neue Datei ausgeben?

Das ist einfach, du verwendest die Ausgabeumleitung mit dem ">"-Zeichen:

set "Infile=c:\logon.txt"  
::Gewuenschten Pfad eintragen
set "OutFile=Laufwerk_Pfad_und_Dateiname_nach_Belieben.txt"  
::Vorhandene Ausgabedatei bei Bedarf löschen
del "OutFile" 2> nul  
for /F "delims=" %%f in (%infile%) do w32tm /ntte %%f >> "%OutFile%"  

Ungetestet, da ich kein AD habe.

Gruß
Strugglechen
Strugglechen 24.04.2012 um 13:19:05 Uhr
Goto Top
Vielen Dank!
das Script macht genau das was es soll!
ich bräuchte nur noch 2 anpassungen wie scripte ich das er jeden Datensatz in eine neue Zeile schreiben soll

also zb so
1Datensatz
2Datensatz

mit break?

und wie bekomme ich die Nummer vor die Zeit geschrieben das sollte dann in der Fertigen Textdatei am besten so aussehen

128623011241300000 2008/08/04 07:25:24 AM
106009
106009 24.04.2012 um 13:24:40 Uhr
Goto Top
Zitat von @Strugglechen:
ich bräuchte nur noch 2 anpassungen wie scripte ich das er jeden Datensatz in eine neue Zeile schreiben soll
Das sollte das Script eigentlich sowieso machen.

mit break?
Nein. face-smile

Sollte das nicht der Fall sein, kannst du die Zeile 06 erst mal so modifizieren:
for /F "delims=" %%f in (%infile%) do w32tm /ntte %%f >> "%OutFile%" && @echo\ >> "%OutFile%"

Wie sieht denn die Ausgabe in der Output-Datei bei dir aus, poste mal eine Originalzeile daraus.
Strugglechen
Strugglechen 24.04.2012 um 13:43:19 Uhr
Goto Top
Okay das mit der Darstellung hat sich erledigt.
Hat nur der Editor so komisch angezeigt

jetzt wäre nur noch die Sache zu Regeln das ich die Datei aus der Text Datei nochmal angezeigt bekomme

Die Ausgabe sieht jetzt so aus

150222 11:46:37.7648619 - 18.04.2012 13:46:37
150222 12:01:01.6755074 - 18.04.2012 14:01:01

und ich würde es so benötigen

129792231977648619,150222 11:46:37.7648619 - 18.04.2012 13:46:37
129792240616755074,150222 12:01:01.6755074 - 18.04.2012 14:01:01


Die Vordere Nummer ist ja die die Eingelesen worden ist

ich bin dir auf jeden fall schon mal sehr Dankbar !
bin was scripting an geht mehr als eingerostet :D
106009
106009 24.04.2012 um 13:55:30 Uhr
Goto Top
Dann nimmst du halt diese Zeile 06
for /F "delims=" %%f in (%infile%) do for /F "delims=" %%a in ('w32tm /ntte %%f') do @echo %%f,%%a >> "%OutFile%"
Skyemugen
Skyemugen 24.04.2012 um 14:03:13 Uhr
Goto Top
Oh Mann ... ich dachte schon du wolltest einen break anstelle des - à la
150222 11:46:37.7648619
18.04.2012 13:46:37
150222 12:01:01.6755074
18.04.2012 14:01:01

gut, dass sich unsere TE immer so eindeutig ausdrücken *pfeif*
Strugglechen
Strugglechen 24.04.2012 um 14:06:26 Uhr
Goto Top
jetzt hab ich alles wie ich es haben wollte face-smile vielen Dank noch einmal!
106009
106009 24.04.2012 um 14:08:38 Uhr
Goto Top
Bitte sehr! Macht 10 Pfennige und eine alte Schwimmhose. face-smile
Strugglechen
Strugglechen 24.04.2012 um 14:34:30 Uhr
Goto Top
das bekommen wir hin :D vielleicht kann ich dir ja auch mal helfen dann hol ich sie mir zurück!