Komplizierte Batchlösung gesucht - Logfile als CSV in verschiedenen Spalten
Kurz zu den Vorhandenen Skripts:
1 Master Skript
x Skripte die vom Masterskript aufgerufen werden
Was möchte ich?:
Ein Log file (als csv) in welchem der Aufbau wie folgt aussieht:
Name des Vorgangs; eventuelle Fehlermeldung; Errorlevel
Hallo Zusammen
Ich denke, nun gibts was zu tüfteln =D
Oben im Vorwort habe ich mein IST-Zustand mal aufgeschrieben.
Ausschnitt aus dem Master Skript:
FirstParams (ganzes Skript):
Das ganze sollte möglichst so aufgebaut sein, dass ich die Zeilen nicht 2 mal schreiben muss, da das ganze Skript ohnehin schon ca 500 Zeilen lang ist und schon schwer genug zu warten.
Wäre toll wenn mir jemand ein wenig helfen könnte und eine Möglichkeit zeigt, um dies zu Realisieren.
Ich hoffe es ist nicht all zu kompliziert und verständlich.
Grüsse
aivilon
1 Master Skript
x Skripte die vom Masterskript aufgerufen werden
Was möchte ich?:
Ein Log file (als csv) in welchem der Aufbau wie folgt aussieht:
Name des Vorgangs; eventuelle Fehlermeldung; Errorlevel
Hallo Zusammen
Ich denke, nun gibts was zu tüfteln =D
Oben im Vorwort habe ich mein IST-Zustand mal aufgeschrieben.
Ausschnitt aus dem Master Skript:
echo erster Durchlauf **Dies dient als Info beim Bearbeiten vom Skript**
echo 2 >>ausgabe.txt **Das ist für den weiteren ablauf, das Batch springt nach dem reboot zum zweiten Durchlauf Abschnitt**
Echo Erster Tailoring Teil >>%installcsv% **Das sollte in der Zelle A1 stehen**
Echo Startdatum= %Date%, Zeitpunkt= %Time% >>%installcsv% **Das sollte in der Zelle A2 stehen**
echo ____________________________________________ >>%installcsv% **Das sollte in der Zelle A3 stehen**
echo. >>%installcsv% **Das sollte in der Zelle A4 stehen**
:FirstParams **muss nicht ins log**
call %Step1% **siehe bitte den zweiten code weiter unten (FirstParams)**
echo ____________________________________________ >>%installcsv% **Das sollte in der Zelle A9 stehen**
echo. >>%installcsv% **Das sollte in der Zelle A10 stehen**
Echo Beendet am= %Date%, Zeitpunkt= %Time% >>%installcsv% **Das sollte in der Zelle A11 stehen**
echo. >>%installcsv% **Das sollte in der Zelle A12 stehen**
echo. >>%installcsv% **Das sollte in der Zelle A13 stehen**
:shutdown
shutdown -r -t 5
FirstParams (ganzes Skript):
@echo off
%CMDName%
Echo Erste Parameter werden gesetzt **Das sollte in der Zelle A5 stehen**
Echo Tailoring in Run Key **Das sollte in der Zelle A6 stehen**
reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\ /v Tailoring /t REG_SZ /d "C:\Temp\FirstLogon.cmd" /f **Die Ausgabe hiervon sollte in Zelle B6**
**Der Errorlevel sollte nun noch in Zelle C6**
Echo IPv6 Deaktivieren **Das sollte in der Zelle A7 stehen**
reg add HKLM\System\CurrentControlSet\Services\Tcpip6\Parameters /v DisabledComponents /t REG_DWORD /d 4294967295 /f **Die Ausgabe hiervon sollte in Zelle B7**
**Der Errorlevel sollte nun noch in Zelle C7**
Echo NetBackup Installations Dateien werden kopiert **Das sollte in der Zelle A8 stehen** **Die Ausgabe hiervon sollte in Zelle B8**
xcopy C:\temp\Software\NetBackup C:\temp\Skripts\08_NetBackup /Y /I /E
**Der Errorlevel sollte nun noch in Zelle C8**
**Nun bitte wieder im oberen Skript (Master Skript) weiter lesen**
Das ganze sollte möglichst so aufgebaut sein, dass ich die Zeilen nicht 2 mal schreiben muss, da das ganze Skript ohnehin schon ca 500 Zeilen lang ist und schon schwer genug zu warten.
Wäre toll wenn mir jemand ein wenig helfen könnte und eine Möglichkeit zeigt, um dies zu Realisieren.
Ich hoffe es ist nicht all zu kompliziert und verständlich.
Grüsse
aivilon
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 180195
Url: https://administrator.de/forum/komplizierte-batchloesung-gesucht-logfile-als-csv-in-verschiedenen-spalten-180195.html
Ausgedruckt am: 23.12.2024 um 07:12 Uhr
4 Kommentare
Neuester Kommentar
moin,
naja....
Und gehe ich recht in der Annahme, es handelt sich nicht um XP Systeme, denn da gibts ein simples
Gruß
Zitat von @aivilon:
Ich denke, nun gibts was zu tüfteln =D
Ich hoffe es ist nicht all zu kompliziert und verständlich.
Ich denke, nun gibts was zu tüfteln =D
Ich hoffe es ist nicht all zu kompliziert und verständlich.
naja....
echo a1,a2,a3,a4,a5>>log.csv
Und gehe ich recht in der Annahme, es handelt sich nicht um XP Systeme, denn da gibts ein simples
netsh interface ipv6 uninstall
Gruß
Salve...
[OT]
man sagt mir nach, dass ich einigermaßen logisch denken können soll.
[/OT]
Aber wenn ich sowas lese, bekomme ich zweifel an der Aussage
Denn den Sinn dahinter verstehe ich nicht.
A7 geht ja noch...
B7 ist mir zu hoch Der Vorgang wurde erfolgreich ausgeführt. sowas soll ins Log?
und dann auch noch den Errorlevel von Befehl B7 nach C7?also in eine ganz andere Zeile? reicht ein erfolgreich nicht aus?
Was ich da oben gemeint habe - ist nix anderes als sowas banales - eine komplizierte Batchlösung kann ich leider nicht liefern
Keine AD mit GPO zur Hand?
[OT]
man sagt mir nach, dass ich einigermaßen logisch denken können soll.
[/OT]
Aber wenn ich sowas lese, bekomme ich zweifel an der Aussage
Denn den Sinn dahinter verstehe ich nicht.
11. Echo IPv6 Deaktivieren Das sollte in der Zelle A7 stehen
12. reg add HKLM\System\CurrentControlSet\Services\Tcpip6\Parameters /v DisabledComponents /t REG_DWORD /d 4294967295 /f
Die Ausgabe hiervon sollte in Zelle B7
13. Der Errorlevel sollte nun noch in Zelle C7
12. reg add HKLM\System\CurrentControlSet\Services\Tcpip6\Parameters /v DisabledComponents /t REG_DWORD /d 4294967295 /f
Die Ausgabe hiervon sollte in Zelle B7
13. Der Errorlevel sollte nun noch in Zelle C7
A7 geht ja noch...
B7 ist mir zu hoch Der Vorgang wurde erfolgreich ausgeführt. sowas soll ins Log?
und dann auch noch den Errorlevel von Befehl B7 nach C7?also in eine ganz andere Zeile? reicht ein erfolgreich nicht aus?
Was ich da oben gemeint habe - ist nix anderes als sowas banales - eine komplizierte Batchlösung kann ich leider nicht liefern
Keine AD mit GPO zur Hand?
set "A7" == "IPv6 Deaktivieren"
for /f "delims=" %%a in ('"reg add HKLM\System\CurrentControlSet\Services\Tcpip6\Parameters /v DisabledComponents /t REG_DWORD /d 4294967295 /f "') do set "B7" == "%%a"
echo %A7%,%B7%>>log.csv