Top-Themen

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 Fehler bei For schleife, prozentprozent i kann syntaktisch nicht verwendet werden

Mitglied: H41mSh1C0R

H41mSh1C0R (Level 3) - Jetzt verbinden

10.04.2012, aktualisiert 16:03 Uhr, 4490 Aufrufe, 7 Kommentare

Hi@All,

Ziel:

- Textdatei suchen
- wenn gefunden Zeichenkette suchen
- wenn gefunden Alles was dahinter in der Zeile Steht mit vorgegebenen Wert vergleichen
- wenn Wert korrekt, dann nach nächster Zeichenkette suchen
- alles rauskopieren was dort hinter dem "=" steht und in eine Variable abspeichern


1. Schritt:

01.
'findstr "AppName" "c:\test\verzeichnis1\test.ini" -> liefert mir die Zeile
Da ich aber alle Unterverzeichnisse durchlaufen muss pack ich das in eine Schleife:

01.
for /f "delims=," %%i in ('findstr "AppName" "test.ini"') do @set ln=%%i 
02.
echo %ln%
Hier sagt er mir ständig ich kann kann %%i syntaktisch nicht verwenden.

%%i ist doch nur die Variable in die das Ergenis geschrieben wird und 2*% ist doch korrekt oder?

VG
Mitglied: bastla
10.04.2012 um 16:30 Uhr
Hallo H41mSh1C0R!
Hier sagt er mir ständig ich kann kann %%i syntaktisch nicht verwenden.
Du führst die Zeile doch als Bestandteil eines Batches aus? Falls nicht (also bei Direkteingabe in die CMD-Shell) ist nur ein Prozentzeichen zu verwenden ...
Wenn Du übrigens Unterverzeichnisse durchlaufen und in allen gefundenen Dateien namens "test.ini" nach "AppName" suchen willst, müsste das eher so aussehen:
for /f "delims=" %%i in ('dir /s/b "c:\test\verzeichnis\test.ini"') do for /f "delims=," %%a in ('findstr "AppName" "%%i"') do echo %%a
wobei in diesem Fall jener Teil der gefundenen Zeilen, der vor dem ersten Komma steht, als %%a (innerhalb der Schleife) zur Verfügung stünde ...

Besser nachvollziehbar wird Dein Vorhaben mit Beispieldaten ...

Grüße
bastla
Bitte warten ..
Mitglied: H41mSh1C0R
10.04.2012 um 16:51 Uhr
Hi Bastla,

als Beispiel:

Ich habe mehrere Programme und die werden auf mehreren Rechnern installiert. Leider erzeugt jede Installation in einem bestimmten Verzeichnis einen Unterordner mit einer PC spezifischen Zeichenkette. Der Inhalt in diesem Ordner ist immer gleich strukturiert, allerdings NICHT der Ordnername.

Damit die cmd auf jeden PC genutzt werden kann muss ich halt so die ini "finden" und mir die gewünschten Werte holen.

01.
 for /f "delims=" %%i in ('dir /s/b %DIR%') do for /f "delims=," %%a in ('findstr "AppName" "%%i"') do echo %%a 
Wenn ich das so in die CMD packe bekomme ich solange 100% CPU Last und bergeweise cmd Instanzen. =(

In der ersten for Schleife muss doch nur der Startpfad rein also indem Fall der Ordner indem die Unterordner mit den PC spezifischen Zeichenketten drinnen stehen.

Gruß
Bitte warten ..
Mitglied: bastla
10.04.2012 um 17:00 Uhr
Hallo H41mSh1C0R!

Du meinst mit
Wenn ich das so in die CMD packe
eine cmd-Datei, nehme ich an - dann müsste es aber doch auch vorher schon Code-Zeilen geben (oder existiert in Deiner Umgebung auf jedem Rechner bereits eine Variable %DIR%?) - poste die doch bitte auch ...
In der ersten for Schleife muss doch nur der Startpfad rein also indem Fall der Ordner indem die Unterordner mit den PC spezifischen Zeichenketten drinnen stehen.
Was in die erste Schleife rein sollte, kannst Du ja meinem Vorschlag entnehmen (und sag nicht, auch die ini-Dateien hätten noch unterschiedliche Namen) ...
Abgesehen davon könnte ich mir als einzigen Grund für "bergeweise cmd Instanzen" nur vorstellen, dass Du die Batchdatei ausgerechnet "findstr.cmd" genannt hättest ...

Grüße
bastla
Bitte warten ..
Mitglied: H41mSh1C0R
10.04.2012 um 17:05 Uhr
01.
@echo off & setlocal  
02.
 
03.
SET DIR="C:\Users\Nutzer\Desktop\Appz\010_installShieldProdukt\" 
04.
SET FILE=setup.ini 
05.
SET AppName="Name" 
06.
SET GUID="test" 
07.
 
08.
for /f "delims=" %%i in ('dir /s/b %DIR%%FILE%') do for /f "delims=," %%a in ('findstr "AppName" "%%i"') do echo %%a

----
Abgesehen davon könnte ich mir als einzigen Grund für "bergeweise cmd Instanzen" nur
vorstellen, dass Du die Batchdatei ausgerechnet "findstr.cmd" genannt hättest ...


*hust, schande über mein Haupt*

ich hab die cmd wirklich so benannt LÖL

PS:

Funktioniert danke. =) Muss das nun grad noch beiseite packen, hab noch was anderes auf den Tisch bekommen. Ich mach dann hier morgen weiter. =)
Bitte warten ..
Mitglied: bastla
10.04.2012 um 17:09 Uhr
Hallo H41mSh1C0R!

Ich würde das eher so schreiben:
01.
@echo on & setlocal  
02.
 
03.
SET "DIR=C:\Users\Nutzer\Desktop\Appz\010_installShieldProdukt" 
04.
SET "FILE=setup.ini" 
05.
SET "AppName=Name" 
06.
SET "GUID=test" 
07.
 
08.
for /f "delims=" %%i in ('dir /s/b "%DIR%\%FILE%"') do for /f "delims=," %%a in ('findstr "%AppName%" "%%i"') do echo %%a
und dem "findstr" ev noch ein "/i" spendieren ...

Grüße
bastla
Bitte warten ..
Mitglied: H41mSh1C0R
10.04.2012 um 17:13 Uhr
Die SET Einträge zwingend in ""?

Danke für deine schnelle Hilfe.

vg
Bitte warten ..
Mitglied: bastla
10.04.2012 um 17:17 Uhr
Hallo H41mSh1C0R!
Die SET Einträge zwingend in ""?
Zwingend: nein
Empfehlenswert: grundsätzlich sehr

Grüße
bastla
Bitte warten ..
Ähnliche Inhalte
Batch & Shell

Batch: Syntaktischer Fehler in For-Schleife

gelöst Frage von CopyPasteBatch & Shell14 Kommentare

Hallo, ich hoffe, ihr könnt mir hier auf die Sprünge helfen. Ich schreibe relativ viele Batchscripte um mir die ...

Batch & Shell

Fehler in Schleife

gelöst Frage von miczarBatch & Shell2 Kommentare

Hallo zusammen, nachdem ich das letzte Problem weitestgehend selber lösen konnte, stehe ich nun vor einem neuen. Dieser Code ...

Batch & Shell

Syntaktischer Fehler im Batch File das die Farben von CMD ändern soll

gelöst Frage von MaxappemannBatch & Shell2 Kommentare

Hallo liebe Community wir haben hier ein kleines Problem. Wir versuchen mit einem Batch File statt color 0A schreiben ...

Batch & Shell

"goto" kann syntaktisch an dieser Stelle nicht verarbeitet werden

gelöst Frage von Y4nn1ckBatch & Shell14 Kommentare

Morgen, ich schreibe gerade an einem Zufallsgenerator für die Klasse, also an einem, der auswählt, wer dran kommt. Ich ...

Neue Wissensbeiträge
Sicherheit

MikroTik-Router patchen, Schwachstelle wird ausgenutzt

Information von kgborn vor 19 StundenSicherheit

Am 23. April 2018 wurde von Mikrotik ein Security Advisory herausgegeben, welches auf eine Schwachstelle im RouterOS hinwies. Mikrotik ...

Windows 10

Microcode-Updates KB4090007, KB4091663, KB4091664, KB4091666 für Windows 10

Information von kgborn vor 1 TagWindows 101 Kommentar

Kurze Information für Administratoren von Windows 10-Systemen, die mit neueren Intel CPUs laufen. Microsoft hat zum 23. April 2018 ...

iOS
Updates für Iphone und Co
Information von sabines vor 1 TagiOS

Gestern abend ist iOS 11.3.1 erschienen, ein kleineres Update, dass einige Lücken schließt und "Lahmlegen" nach einem Display Tausch ...

Windows 7

Windows 7 - Server 2008 R2: Exploit für Total Meltdown verfügbar

Information von kgborn vor 2 TagenWindows 7

Kleine Information für Administratoren, die für die Updates von Windows 7 SP1 und Windows Server 2008 R2 SP1 verantwortlich ...

Heiß diskutierte Inhalte
Batch & Shell
Powershell: Im AD nach Rechnern mit bestimmten IP-Adressen suchen
gelöst Frage von Raven42Batch & Shell36 Kommentare

Hallo zusammen, ich suche nach einer Möglichkeit nach Computern im AD zu suchen , deren IP-Adresse mit 10.11.12. beginnt. ...

C und C++
Frage1 C Programmierung-Makefile Frage2 PHP-Programmierung HTTP-Fehler 404
Frage von KatalinaC und C++34 Kommentare

Hallo, ich habe 2 Fragen, die nichts miteinander zu tun haben aber mit denen ich mich gerade beschäftige: 1. ...

Windows Server
Alten DC entfernen
Frage von smartinoWindows Server24 Kommentare

Hallo zusammen, ich habe hier eine Umgebung übernommen und erstmal einen DCDIAG gemacht. Dabei fällt auf, daß eine ganze ...

Ausbildung
Wie gelingt ein guter Einstieg in die FiSi-Ausbildung? (Umschulung)
Frage von SiAnKoAusbildung22 Kommentare

Schönen guten Tag, ich bin SiAnKo und habe seit dem 1.04.2018 eine Umschulung als FiSi angefangen. Ich möchte natürlich ...