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

Logfile - Ein Fehler eines Befehls in keiner Variante des Outputs drinn

Frage Entwicklung Batch & Shell

Mitglied: aivilon

aivilon (Level 1) - Jetzt verbinden

06.03.2012 um 09:59 Uhr, 2322 Aufrufe, 11 Kommentare

Morgen zusammen

Folgendes Problem. Ich möchte ein Logfile aus 4 Teilen zusammenstellen.
Teil 1: Eigener Text
Teil 2: Fehlermeldung eines Befehls
Teil 3: Errorlevel
Teil 4: Zeitstempel

Teil 1, 3 und 4 sind auch in ordnung. Nur Teil 2 nicht.

hier mal mein Ausprobiercode:

01.
 
02.
ECHO "1>>Logfile.csv" >>Logfile.csv 
03.
echo %S01A1%;%S01B1%;%S01C1%;%time% 1>>Logfile.csv 
04.
 
05.
@echo off 
06.
 
07.
set S01A1=Lade den NTUSER in einen HIVE 
08.
for /f "delims=" %%a in ('"reg.exe load HKU\NTUSER "C:\Users\Default User\NTUSER.DAT""') do set S01B1=%%a 
09.
set S01C1=%Errorlevel% 
10.
 
11.
pause 
12.
 
13.
echo %S01A1%;%S01B1%;%S01C1%;%time% 
14.
 
15.
pause 
16.
 
17.
ECHO ">>Logfile.csv" >Logfile.csv 
18.
echo %S01A1%;%S01B1%;%S01C1%;%time% >>Logfile.csv 
19.
 
20.
ECHO "1>>Logfile.csv" >>Logfile.csv 
21.
echo %S01A1%;%S01B1%;%S01C1%;%time% 1>>Logfile.csv 
22.
 
23.
ECHO "1>>Logfile.csv 2<&1" >>Logfile.csv 
24.
echo %S01A1%;%S01B1%;%S01C1%;%time% 1>>Logfile.csv 2<&1 
25.
 
26.
ECHO "1>>Logfile.csv 2>&1" >>Logfile.csv 
27.
echo %S01A1%;%S01B1%;%S01C1%;%time% 1>>Logfile.csv 2>&1 
28.
 
29.
ECHO "2>>Logfile.csv" >>Logfile.csv 
30.
echo %S01A1%;%S01B1%;%S01C1%;%time% 2>>Logfile.csv 
31.
 
32.
ECHO "2>>Logfile.csv 2<&1" >>Logfile.csv 
33.
echo %S01A1%;%S01B1%;%S01C1%;%time% 2>>Logfile.csv 2<&1 
34.
 
35.
ECHO "2>>Logfile.csv 2>&1" >>Logfile.csv 
36.
echo %S01A1%;%S01B1%;%S01C1%;%time% 2>>Logfile.csv 2>&1 
37.
 
38.
ECHO ">>Logfile.csv 2<&1" >>Logfile.csv 
39.
echo %S01A1%;%S01B1%;%S01C1%;%time% >>Logfile.csv 2<&1 
40.
 
41.
ECHO ">>Logfile.csv 2>&1" >>Logfile.csv 
42.
echo %S01A1%;%S01B1%;%S01C1%;%time% >>Logfile.csv 2>&1 
43.
 
44.
 
45.
pause 
46.
 

Wenn ich
01.
reg.exe load HKU\NTUSER "C:\Users\Default User\NTUSER.DAT"
in einem Commandprompt ausführe bekomme ich folgende Fehlermeldung:
Fehler: Der angegebene Registrierungsschlüssel oder Wert konnte nicht gefunden werden.
Diese Fehlermeldung müsste eigentlich in die Variable von Teil B.

Im Code oben sind alle mir bekannten Redirects Combinationen. Keine davon enthält alle Teile.


Wie müsste der >>Logfile.csv aussehen, wenn ich alle meine im Vorwort beschriebenen Teile im CSV haben möchte?

Danke und grüsse
aivilon
Mitglied: bastla
06.03.2012 um 10:47 Uhr
Hallo aivilon!

Da ja der Fehler in Zeile 8 auftritt, musst Du die Ausgabe auch dort umleiten:
for /f "delims=" %%a in ('reg.exe load HKU\NTUSER "C:\Users\Default User\NTUSER.DAT" 2^>^>Logfile.csv') do set "S01B1=%%a"
Grüße
bastla
Bitte warten ..
Mitglied: Skyemugen
06.03.2012 um 11:48 Uhr
Aloha bastla,

ich verstand es eher so, dass er
01.
for /f "delims=" %%a in ('reg.exe load HKU\NTUSER "C:\Users\Default User\NTUSER.DAT" 2^>%temp%\datei.log') do set "S01B1=%%a" 
02.
if not defined S01B1 for /f "usebackq delims=" %%s in ("%temp%\datei.log") do set "S01B1=%%s"
wollte

Diese Fehlermeldung müsste eigentlich in die Variable von Teil B.

wozu er den Errorlevel allerdings zusätzlich ausgeben lässt ...

greetz André

P.S.: Gibt es keine schönere Methode den Handle in eine Variable zu packen *grübel*
Bitte warten ..
Mitglied: aivilon
06.03.2012 um 12:39 Uhr
Zitat von Skyemugen:
Aloha bastla,

ich verstand es eher so, dass er
01.
for /f "delims=" %%a in ('reg.exe load HKU\NTUSER "C:\Users\Default User\NTUSER.DAT" 
02.
> 2^>%temp%\datei.log') do set "S01B1=%%a" 
03.
> if not defined S01B1 for /f "usebackq delims=" %%s in ("%temp%\datei.log") do set 
04.
> "S01B1=%%s"
wollte

jep. die Fehlermeldung muss in die Variable S01B1

> Diese Fehlermeldung müsste eigentlich in die Variable von Teil B.

wozu er den Errorlevel allerdings zusätzlich ausgeben lässt ...

muss ich doch fast? oder kann ich den auch gleich direkt in eine zweite variable schreiben?

P.S.: Gibt es keine schönere Methode den Handle in eine Variable zu packen *grübel*

unschön ja...aber ich wüsste auch keine andere methode... :/
Bitte warten ..
Mitglied: Skyemugen
06.03.2012 um 12:53 Uhr
Aloha,

wozu benötigst du den Errorlevel extra, wenn du entweder die korrekte Ausführung oder die Fehlerausgabe in S01B1 hast?

Verstehe ich nachwievor nicht ...

greetz André
Bitte warten ..
Mitglied: aivilon
06.03.2012 um 15:01 Uhr
Zitat von Skyemugen:
Aloha,

wozu benötigst du den Errorlevel extra, wenn du entweder die korrekte Ausführung oder die Fehlerausgabe in
S01B1 hast?

Verstehe ich nachwievor nicht ...

greetz André

Ach so...jetzt verstehe ich.

ganz einfaches Grundprinzip:

Chef will, Chef bekommt *grins*

und vorallem wende das in nem csv hast, kannst runterscrollen und siehts wo keine null steht dass was falsch abgelaufen ist, ohne dass du 50 Zeilen einzeln durchstudieren kannst ;)
Bitte warten ..
Mitglied: bastla
06.03.2012 um 20:21 Uhr
@skye
Gibt es keine schönere Methode den Handle in eine Variable zu packen
Geringfügig schöner (aber noch lange nicht attraktiv ):
01.
for /f "delims=" %%a in ('reg.exe load HKU\NTUSER "C:\Users\Default User\NTUSER.DAT" 2^>%temp%\datei.log') do set "S01B1=%%a" 
02.
if not defined S01B1 set /p S01B1=<%temp%\datei.log
Grüße
bastla
Bitte warten ..
Mitglied: Skyemugen
07.03.2012 um 07:14 Uhr
Aloha bastla,

ich dachte nicht, dass du in die Falle tappst, denn die Ausgabe hat leider eine leere Zeile #1 und daher bleibt set /p erfolglos :P

greetz André

EDIT: POC
01.
07.03.2012  7:29:21,78 E:\Skripte 
02.
>for /F "delims=" %a in ('reg.exe load HKU\NTUSER "C:\Users\Default User\NTUSER. 
03.
DAT" 2>C:\DOKUME~1\Benutzer\LOKALE~1\Temp\datei.log') do set "S01B1=%a" 
04.
------ 
05.
 
06.
07.03.2012  7:29:21,84 E:\Skripte 
07.
>type C:\DOKUME~1\Benutzer\LOKALE~1\Temp\datei.log 
08.
 
09.
Fehler: Der angegebene Registrierungsschl³ssel oder Wert konnte nicht gefunden w 
10.
erden. 
11.
------ 
12.
 
13.
07.03.2012  7:29:21,84 E:\Skripte 
14.
>if not defined S01B1 set /p S01B1= 0<C:\DOKUME~1\Benutzer\LOKALE~1\Temp\datei.l 
15.
og 
16.
07.03.2012  7:29:21,84 E:\Skripte 
17.
>echo 
18.
ECHO ist eingeschaltet (ON). 
19.
------ 
20.
 
21.
07.03.2012  7:29:21,84 E:\Skripte 
22.
>if not defined S01B1 for /F "usebackq delims=" %s in ("C:\DOKUME~1\Benutzer\LOK 
23.
ALE~1\Temp\datei.log") do set "S01B1=%s" 
24.
 
25.
07.03.2012  7:29:21,84 E:\Skripte 
26.
>set "S01B1=Fehler: Der angegebene Registrierungsschl³ssel oder Wert konnte nich 
27.
t gefunden werden."
Bitte warten ..
Mitglied: aivilon
07.03.2012 um 07:24 Uhr
Moin Moin

Also Skye
Hat wunderbar funktioniert. Ich danke dir =)

@bastla

klar ist das nicht schön. kennst du evtl eine schönere Variante? =)


Grüsse
Bitte warten ..
Mitglied: bastla
07.03.2012 um 09:01 Uhr
[OT] @skye
POC
Dir hätte ich das doch auch so geglaubt ...

Grüße
bastla
[/OT]
Bitte warten ..
Mitglied: Skyemugen
07.03.2012 um 09:08 Uhr
Aloha bastla,

I know, mir war nur mal so

Hatte mich gestern auch verwundert, dass set /p keinen Erfolg brachte aber dass du mir das dann vorschlägst, wo ich extra deswegen die Schleife bauen musste *sniff*, du hättest also nicht geglaubt, dass ich diesen Weg sinnvollerweise längst gegangen wäre Kein Vertrauen ...

*hust* Egal, aivilon, wann sehen wir denn den ökofreundlichen Marker am Fred kleben? Oder ist hier irgendwo noch etwas versteckt offen?

greetz André
Bitte warten ..
Mitglied: bastla
07.03.2012 um 09:15 Uhr
@skye
du hättest also nicht geglaubt, dass ich diesen Weg sinnvollerweise längst gegangen wäre
War leider nur so en passant - wenn ich mir die Zeit genommen hätte, darüber nachzudenken, hätte ich es auch gleich testen können ...

Grüße
bastla
Bitte warten ..
Neuester Wissensbeitrag
Internet

Unbemerkt - Telekom Netzumschaltung! - BNG - Broadband Network Gateway

(3)

Erfahrungsbericht von ashnod zum Thema Internet ...

Ähnliche Inhalte
Windows Server
gelöst BackupExec 2016 Fehler beim Backup von Windows 2016 (1)

Frage von Looser27 zum Thema Windows Server ...

Switche und Hubs
Trunk für 2xCisco Switch. Wo liegt der Fehler? (21)

Frage von JayyyH zum Thema Switche und Hubs ...

Vmware
Veeam für VM Ware Backup Fehler (2)

Frage von JoergN1968 zum Thema Vmware ...

Heiß diskutierte Inhalte
Windows Server
Outlook Verbindungsversuch mit Exchange (15)

Frage von xbast1x zum Thema Windows Server ...

Grafikkarten & Monitore
Tonprobleme bei Fernseher mit angeschlossenem Laptop über HDMI (11)

Frage von Y3shix zum Thema Grafikkarten & Monitore ...

Microsoft Office
Keine Updates für Office 2016 (11)

Frage von Motte990 zum Thema Microsoft Office ...