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

Suchwert in einer Variable speichern

Frage Entwicklung Batch & Shell

Mitglied: hansis1

hansis1 (Level 1) - Jetzt verbinden

16.08.2006, aktualisiert 16:28 Uhr, 5107 Aufrufe, 7 Kommentare

Hallo!
Wieder mal ein Batch-Problem:

ich habe eine Logdatei, in der ich nach dem Wort Fehler suchen möchte. Und das Gefundene würde ich gerne in eine Variable speichern.
Also in dieser Art:
%Fehleranalyse% = TYPE "C:\temp\LOG.txt" | find /i "Fehler:"

Es wird mir zwar der gefundene Fehler auf der Shell ausgegeben, aber ich möchte diese Ausgabe gerne in einer Variablen für die weitere Verarbeitung zwischenspeichern.

Wie kann man das am besten lösen?

Danke
Hansi
Mitglied: MartinSchmid
16.08.2006 um 11:09 Uhr
Hi Hansi,

du könntest das Ergebnis deines Filters in eine Datei speichern

TYPE "C:\temp\LOG.txt" | find /i "Fehler:" > dateiname

und dann mit for (siehe Hilfe für genaue Syntax) diese Datei im Bedarfsfall auslesen bzw. gleich die Variablen damit füllen und die Datei dann wieder löschen. In der Hilfe vom Windows sind da ganz brauchbare Beispiele enthalten, die den Umgang mit for gut beschreiben.

Sonst fällt mir dazu auch nix ein.

mfg Martin
Bitte warten ..
Mitglied: hansis1
16.08.2006 um 11:16 Uhr
Hallo Martin!

Danke, auf diese Idee bin ich auch schon gekommen.

Es ist so, ich möchte dann diese Variable überprüfen, ob etwas drinnensteht.

Also in diese Richtung:

IF "Fehleranalyse"=="" (
Befehl 1
) ELSE (
Befehl 2
)

Hansi
Bitte warten ..
Mitglied: MartinSchmid
16.08.2006 um 11:20 Uhr
Ich versuch mal schnell was zusammenzubasteln.
Bitte warten ..
Mitglied: hansis1
16.08.2006 um 11:22 Uhr
Super Danke!
Das nenn ich Service.

lg
Hansi
Bitte warten ..
Mitglied: Biber
16.08.2006 um 11:42 Uhr
Moin hansis1,

derweil kann ich ja alternativ etwas dazu schreiben.

Du könntest natürlich diese Anforderung so lösen:
01.
 (find /i "Fehler:" C:\temp\LOG.txt>nul) && set "FehlerFlag=Y" 
02.
IF defined FehlerFlag ( 
03.
goto machDies 
04.
) ELSE ( 
05.
goto MachDas 
06.
07.
...
...aber wozu dann überhaupt eine Variable??
01.
 (find /i "Fehler:" C:\temp\LOG.txt>nul) && goto MachDies 
02.
goto MachDas 
03.
...
...das reicht doch vollkommen.

Gruß
Biber,
der mehr simple Bätche bevorzugt
Bitte warten ..
Mitglied: MartinSchmid
16.08.2006 um 11:59 Uhr
hier mal ne Lösung über for:

zuerst Daten in eine Datei schreiben
echo "text" > daten.dat

dann über for wieder auslesen und als Umgebungsvariable setzen
for /F "tokens=1" %%i in (daten.dat) do set env=%%i

dann mit der Variablen was machen, z.B. ausgeben
echo %env%

Variable und Datei wieder löschen
set env=
del daten.dat


--> damit kannst du den Inhalt der Variablen weiter auswerten, die Lösung von Biber weiter unten könnte für deine Zwecke aber ausreichend sein und ist viel kürzer und übersichtlicher als meine.

mfg Martin
Bitte warten ..
Mitglied: hansis1
16.08.2006 um 16:28 Uhr
Hallo!

Vielen Dank an alle. Habe es mit der Lösung von Biber gemacht.

Danke
Hansi
Bitte warten ..
Ähnliche Inhalte
Neue Wissensbeiträge
Tipps & Tricks

Wie Hackt man sich am besten in ein Computernetzwerk ein

(38)

Erfahrungsbericht von Herbrich19 zum Thema Tipps & Tricks ...

Humor (lol)

Bester Vorschlag eines Supporttechnikers ever: APC

(15)

Erfahrungsbericht von DerWoWusste zum Thema Humor (lol) ...

Heiß diskutierte Inhalte
Festplatten, SSD, Raid
POS Hardware und alternativen zu Raid 1? (21)

Frage von Brotkasten zum Thema Festplatten, SSD, Raid ...

Viren und Trojaner
Verschlüsselungstrojaner simulieren (15)

Frage von AlbertMinrich zum Thema Viren und Trojaner ...

ISDN & Analoganschlüsse
gelöst Splitter - RJ45 zu RJ11? (14)

Frage von Waishon zum Thema ISDN & Analoganschlüsse ...

Rechtliche Fragen
Hotspot rechtssicher betreiben? (14)

Frage von xSiggix zum Thema Rechtliche Fragen ...