Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

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

Werte aus txt datei als variable setzen

Frage Entwicklung Batch & Shell

Mitglied: Pr0vieH

Pr0vieH (Level 1) - Jetzt verbinden

01.10.2006, aktualisiert 03.02.2007, 8146 Aufrufe, 5 Kommentare

Zeile für zeile setzen, verarbeiten, nächste zeile setzen, verarbeiten usw.

Hi...

Ich habe ein problemchen....

also ich habe eine txt in der stehen nen paar informationen.... genauer gesagt ist es eine log datei ;)

also die log sieht so aus....:

datum uhrzeit:wert [host:user]

01.10.06 13.00:9876 [rechner1:hans]
02.10.06 09.00:6789 [rechner2:tom]
07.10.06 04.00:3468 [rechner29:tine]

ich habe jetzt ein script.... weches werte aus dieser datei benötigt...

also am besten wäre wenn datum urzeit zusammen fassen und in %vertime% setzen würde
den wert nach dem : setzen als %parameter1%
und die werte in der [] getrennt setzen als %hostname% und %username%

also:
%vertime%=01.10.06 13.00
%parameter1%=9876
%hostname%=rechner1
%username%=hans

dann will ich diese variablen verarbeiten... mittels script
wenn das script fertig ist... soll er die nächste zeile nehmen... also wieder alle variablen neu setzten mit den werten aus zeile 2

also:
%vertime%=02.10.06 09.00
%parameter1%=6789
%hostname%=rechner2
%username%=tom

usw.

irgendwie klappt das bei mir nicht so wie ich es mir vorstelle kann mir vll jemand helfen....

greets Pr0vieH
Mitglied: Biber
01.10.2006 um 15:04 Uhr
Moin Pr0View,

eine Skizze für die Batchzeilen wäre so:

01.
.... 
02.
for /f "tokens=1-5 delims=:][ " %%a in (Pr0Views.log) do call :processLine %%a %%b %%c %%d %%e 
03.
goto :RestOfBatch 
04.
 
05.
:processline  
06.
set "myDate=%1" %2" 
07.
set "myPara1=%3"  
08.
set "myHost=%4"  
09.
set "myUser=%5" 
10.
set my 
11.
REM ...tu, was Du mit diesen Zeilenwerten tun muss... 
12.
goto :eof 
13.
 
14.
:RestOfBatch 
15.
....
[Die Zeile "set my" zeigt Dir die gesetzten Werte an.]
Grüße
Biber
Bitte warten ..
Mitglied: Pr0vieH
01.10.2006 um 17:11 Uhr
Danke Biber für die schnelle antwort... und deine lösung ist wie immer super perfekt...

Dank dir

daraus schlussfolgere ich das ich mit "for" irgendwie nich so richtig kla kommen ;)
habs tausendmal probiert aber nie zum richtigen ergebniss gekommen...naja was solls hauptsache ist das es jetzt geht

greet Pr0vieH
Bitte warten ..
Mitglied: xflatx
02.02.2007 um 22:10 Uhr
Hi, ich brauche sowas aehnliches hab das Beispiel aber noch nicht ganz verstanden.

Was hat es mit dem goto :eof auf sich, das bedeutet doch ans ende der batch datei gehn oder? und dann passiert doch nichts mehr oder?

Wie bringe ich denn das script dazu in meiner zweiten zeile weiterzumachen??

Danke schonmal.

Andre
Bitte warten ..
Mitglied: Pr0vieH
02.02.2007 um 23:25 Uhr
moin flat....

also da ich ein bisschen dazu gelernt habe kann ich dir sagen das
goto :eof = goto :end of function heißt oder so in der art also...

do call löst quasi eine funktion aus die in diesem beispiel "processLine" heißt und diese funktion immer wieder ausführt wenn sie aufgerufen wird... und um diese funktion zu beenden sagst du einfach goto :eof

ich hoffe ich konnte dir weiterhelfen

aber leider kann ich dir beim for befehl nicht wirklich weiterhelfen da ich wie ich im letzten post schon gesagt habe mit dem for befehl nich so richtig wirklich doll klar komme ;)
aber kann ich dir sagen das der for befehl für das abarbeiten der zeilen verantwortlich ist...

also ich versuch es trozdem mal zu erklären wie ich es verstanden habe... biberlein magste mich korrigieren falls ich falsch liege....

tokens sagt dir wie viele "unterteile" du haben willst also
delims sind die "trenner" für die "unterteile"

hast du also z.B.
text1:text2
dann sagst du "delims=:"
und "tokens=1-2"
dann hast du die zeile unterteilt und du hast als ergebniss

text1
text2

sry für das unwort "unterteile" aber mir viel nix anderes ein xD
Bitte warten ..
Mitglied: xflatx
03.02.2007 um 01:25 Uhr
Hallo Pro,

danke fuer die schnelle Antwort, ich hab die Datei und alles auf einem andern Rechner und komme erst Montag wieder dazu es auszuprobieren aber das mit dem end of FUNKTION und nicht wie ich dachte file macht sinn. Ich denke ich hab jetzt ungefaehr verstanden wie vorgegangen wird und werd das am montag mal anpassen und ausprobieren.

Also Danke nochmal und schoenes Wochenende
Bitte warten ..
Ähnliche Inhalte
PHP
gelöst TXT Datei auslesen und bestimmte Zeilen in Variable setzen (11)

Frage von 126594 zum Thema PHP ...

Batch & Shell
Batch-Variable nach Stichworten aus TXT Datei durchsuchen (3)

Frage von 126594 zum Thema Batch & Shell ...

Neue Wissensbeiträge
Viren und Trojaner

FinFisher: Internetprovider schieben Spitzelopfern Malware unter

(1)

Information von kaiand1 zum Thema Viren und Trojaner ...

Humor (lol)

Wo ist der Fehler auf dem Bild?

(17)

Information von the-buccaneer zum Thema Humor (lol) ...

Windows Update

Offenbar erneutes MS-Update mit Fehlerschleife (2012 R2)

Information von VGem-e zum Thema Windows Update ...

Heiß diskutierte Inhalte
Lizenzierung
Programm soll in verschiedenen Versionen lizenziert sein (20)

Frage von Yanmai zum Thema Lizenzierung ...

Humor (lol)
Wo ist der Fehler auf dem Bild? (17)

Information von the-buccaneer zum Thema Humor (lol) ...

Windows Userverwaltung
Ordner-Rechte für Dom.Admin einschränken? (13)

Frage von kilobyte zum Thema Windows Userverwaltung ...