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

Verschachtelte For-Schleife gibt fälschlicherweise Dateinamen aus

Frage Entwicklung

Mitglied: TheUntouchable

TheUntouchable (Level 1) - Jetzt verbinden

23.03.2009, aktualisiert 08:52 Uhr, 3472 Aufrufe, 5 Kommentare

Hallo Jungs!

Hab mal wieder ne kleine Frage:

Ich möchte das aus einer Datei PC Namen herrausgelesen werden. Jedoch enthält die Datei auch noch andere Einträge, und die Anzahl der PCs kann jedesmal variieren.

Die Datei sieht so aus:
config.ini
01.
;============================= 
02.
;   NetSender Konfiguration 
03.
;============================= 
04.
 
05.
[Optionen] 
06.
;Wird automatisch gesetzt wenn das Programm das erste mal gestartet wurde und die Einweisung bestätigt wird. 
07.
EinleitungGelesen=1 
08.
 
09.
[Computerliste] 
10.
;Geben Sie hier die Ziel-PCs in folgender Form ein: 
11.
;1=Computer1 
12.
;2=Computer2 
13.
1=Computer1 
14.
2=Computer2 
15.
 
16.
;Geben Sie hier die Anzahl der Computer an die sich in der Computerliste befinden 
17.
AnzahlPCs=2 
18.
 
19.
[ENDE]
Der Batchscript zum auslesen so:
01.
for /f "Tokens=2 Delims== " %%i in ('FIND "AnzahlPCs" Config.ini') do set pcanzahl=%%i 
02.
for /L %%i IN (1 1 %pcanzahl%) do for /f "Tokens=2 Delims== " %%a in ('FIND "%%i=" Config.ini') do echo %%a
Das Problem ist, das ich hierbei folgende Ausgabe bekomme:
CONFIG.INI
Computer1
CONFIG.INI
Computer2

Warum bekomm den ini Namen mit als Ausgabe?
Mitglied: Aldeeer
23.03.2009 um 10:00 Uhr
Hallo,

ich bin mir nicht Sicher aber versuch dein Glück mal mit "findstr /n /r "AnzahlPCs" Config.ini".

Gruß Aldeeer
Bitte warten ..
Mitglied: TheUntouchable
23.03.2009 um 10:05 Uhr
Hallo Aldeeer,

leider behebt das den Fehler nicht.. Trotzdem danke!
Bitte warten ..
Mitglied: paulepank
23.03.2009 um 11:00 Uhr
Hallo TheUntouchable,

wenn du bei deiner Lösung bleiben willst, dann entferne beim Delimiter das Leerzeichen.
01.
for /f "Tokens=2 Delims==" %%i in ('FIND "AnzahlPCs" Config.ini') do set pcanzahl=%%i 
02.
for /L %%i IN (1 1 %pcanzahl%) do for /f "Tokens=2 Delims==" %%a in ('FIND "%%i=" Config.ini') do echo %%a
Hintergrund: FIND gibt immer noch den Dateinamen mit aus.

cu paulepank
Bitte warten ..
Mitglied: TheUntouchable
23.03.2009 um 11:05 Uhr
Danke für den Tipp paulepank, jetzt funktionierts!
Bitte warten ..
Mitglied: paulepank
23.03.2009 um 11:21 Uhr
eine Anmerkung dazu hab ich noch:

wenn man eine bestimmte Zeichenkette in einer Zeile sucht, ist FINDSTR die bessere(richtige) Lösung.
Mit FIND suchst du nur Datei(en) die eine bestimmten Zeichenkette enthalten.
Da du ja bereits weißt, daß in der Config.ini die gesuchte Zeichenkette enthalten ist, reicht in der
1. FOR-Schleife auch ein ('TYPE Config.ini')

cu paulepank
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Verschachtelte For Schleife für Batch Neuling (3)

Frage von yperiu zum Thema Batch & Shell ...

Batch & Shell
gelöst Verschachtelte FOR-Schleife mit einem Argument (3)

Frage von mp-home zum Thema Batch & Shell ...

Batch & Shell
gelöst Verlinkung erstellen Batch Datei mit for Schleife (2)

Frage von rusdav zum Thema Batch & Shell ...

Neue Wissensbeiträge
Batch & Shell

Batch - ein paar Basics die man kennen sollte

Tipp von Pedant zum Thema Batch & Shell ...

Microsoft

Restrictor: Profi-Schutz für jedes Window

(6)

Tipp von AlFalcone zum Thema Microsoft ...

Batch & Shell

Batch zum Zurücksetzen eines lokalen Profils

Tipp von Mr.Error zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Windows Server
gelöst Benutzer lässt sich nur an einem Clientcomputer anmelden (17)

Frage von Ammann zum Thema Windows Server ...

Vmware
gelöst Wie würdet Ihr eine ESXi Cluster Farm managen? (11)

Frage von AlFalcone zum Thema Vmware ...

Batch & Shell
gelöst Gruppenzugehörigkeit von AD Usern ermitteln - die Perfektion fehlt (11)

Frage von Stefan007 zum Thema Batch & Shell ...