zimboman
Goto Top

Ausgabe einer CMD-Ausgabe in Datei kopieren

Hallo zusammen!

Wir haben ein Batch-Skript mit mehrere Abfragen und Ablaufroutinen. Es ist unser Vorinstallationsskript das auf Nachfrage diverse Programme startet und Registryeinträge setzt etc. pp.

Nun wollen wir aber das ganze noch etwas detailierte mitloggen anstatt wie nur die Ausgabe in der CMD.
Ich kenne die Standardwerte mit Befehl > datei.txt und befehl >> Datei.txt.
Das funktioniert aber ab dem Moment wo eine Eingabe erwartet wird natürlich nicht mehr.

Gibt es nun die Möglichkeit am Ende des Skriptes, den Inhalt des CMD-Fensters in eine Textdatei zu kopieren?

Content-Key: 370901

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

Ausgedruckt am: 29.03.2024 um 13:03 Uhr

Mitglied: NetzwerkDude
NetzwerkDude 12.04.2018 um 11:58:36 Uhr
Goto Top
klammern?

(
  Echo blabla
  ping 10.0.0.1
) > file.txt 

damin würden die ausgaben beider befehle in die file.txt geschrieben


bzw. usereingaben über variablen und dann die befehlsausgabe in eine datei:
set /p VARIABLE=welche ip pingen?
ping %VARIABLE% > logfile.txt 
Mitglied: zimboman
zimboman 12.04.2018 um 12:03:04 Uhr
Goto Top
Klammern klappt leider gar nicht, da die CMD sich dann gleich wieder schließt

Die 2. Option wäre mit viel Aufwand verbunden.... Haben 600 Zeilen im Skript...
Mitglied: Pedant
Pedant 12.04.2018 um 12:08:17 Uhr
Goto Top
Hallo zimboman,

Zitat von @zimboman:
Ich kenne die Standardwerte mit Befehl > datei.txt und befehl >> Datei.txt.
Welche Werte sind hier Standard?

Zitat von @zimboman:
Das funktioniert aber ab dem Moment wo eine Eingabe erwartet wird natürlich nicht mehr.
Wieso nicht?
@echo off
echo Gib was ein!> Datei.txt
echo Gib was ein!
set /p eingabe=
echo Du hast %eingabe% eingegeben.>> Datei.txt
echo Du hast %eingabe% eingegeben.


Zitat von @zimboman:
Gibt es nun die Möglichkeit am Ende des Skriptes, den Inhalt des CMD-Fensters in eine Textdatei zu kopieren?
Ich vermute nein oder zumindest, dass man an den Pufferinhalt nicht so einfach rankommt.

Gruß Frank
Mitglied: Pedant
Pedant 12.04.2018 um 12:49:05 Uhr
Goto Top
Hallo zimboman,

wie wäre es mit einer Zweiteilung des Worker-Skriptes und einem aufrufenden Rahmenskript?

aufruf.cmd
@echo off
set eingabe=
call worker.cmd>Datei.txt
echo Gib was ein!>>Datei.txt
echo Gib was ein!
set /p eingabe=
echo Du hast %eingabe% eingegeben.
call worker.cmd %eingabe%>>Datei.txt

worker.cmd
@echo off

if not "%1"=="" goto fortsetzung  

:beginn
echo Hier gehts los.
echo Eingegeben wurde noch nichts.

REM Hier wird unterbrochen
exit /b

:fortsetzung
echo Du hast %1 eingegeben.
echo Vielen Dank
echo Auf Wiedersehen

Gruß Frank