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

for Schleife vorzeitig beenden?

Mitglied: Multimania

Multimania (Level 1) - Jetzt verbinden

24.10.2006, aktualisiert 13:38 Uhr, 9838 Aufrufe, 5 Kommentare

[Edit] Beitrag nach wochenlanger Stagnation geschlossen 13.11.2006 [/Edit Biber]

Hallo,

iich habe eine for Schleife die für jede Zeile in einer Datei einen Befehl ausführt.
Nun möchte ich aber gerne das nur die ersten 4 Zeilen verwendet werden bzw. die Schleife nach der 4. Zeile geschlossen wird.

for /f %%a IN (test.txt) DO (
befehl %%a
)

kann mir jemand helfen?

Danke.
Mitglied: Biber
24.10.2006 um 11:26 Uhr
Moin Multimania,

eine der Möglichkeiten wäre so.
01.
::-ExitLoopDemo.bat 
02.
@echo off & setlocal & set /a "Ln=1000" 
03.
for /f "delims=" %%a IN (test.txt) DO call:Do4Times %%a 
04.
:Do4Times [Parameter1: eine Zeile aus Datei 
05.
set /a Ln+=1 
06.
if %Ln% GTR 1004 goto ExitLoop 
07.
Echo [%ln:~-3%] %* 
08.
goto :eof 
09.
:exitloop 
10.
:: ...ggf ...weitere Befehle 
11.
:: ....
Gruß
Biber
Bitte warten ..
Mitglied: Multimania
24.10.2006 um 12:45 Uhr
Hallo,

danke für die schnelle Antwort, ich habe es probiert aber ich habe scheinbar vergessen zu sagen das die for Schleife bereits in einer for Schleife steckt und das dann mit der Sprungmarke nicht funktioniert.

hier etwas mehr Quelltext.

for /f %%a IN (a.txt) DO (
for /f %%b IN (b.txt) DO (
befehl %%a %%b
)
)


Danke.
Bitte warten ..
Mitglied: Biber
24.10.2006 um 13:15 Uhr
Na ja, Multimania,

dann würde ich die Strategie davon abhängig machen, ob in der Datei b.txt die ersten 4 von Zeilen oder die ersten 4 von 100000 Zeilen gelesen sollen.

Im ersten Fall (4 vom 10 Zeilen) würde die Sprungmarke dann schlicht "goto :eof", also verlasse den CALL-Block lauten. Oder aber in der äußeren Schleife die innere FOR-Anweisung nur aufrufen, wenn %Ln% kleiner 4.

Im zweiten Fall (nur die ersten 4 Zeilen eines riesigen Logfiles) würde ich entweder per Batch erstmal die ersten 4 Zeilen in eine Datei %temp%\c.txt kopieren und mit dieser weiterarbeiten.

Oder (dieselbe Mimik, aber professioneller) die ersten vier Zeilen mit einem head.exe/header.exe-Utility oder halt einem VBS-Schnipsel extrahieren.

Gruß
Biber
Bitte warten ..
Mitglied: Multimania
24.10.2006 um 13:21 Uhr
deinem ersten Fall kann ich leider nicht fogen

Fall 2 verstehe ich, bin noch auf der suche ...
Bitte warten ..
Mitglied: Biber
24.10.2006 um 13:38 Uhr
01.
::--------Fall A nochmal im ganzen Satz.... 
02.
@echo off & setlocal & set /a "Ln=1000" 
03.
for /f "delims=" %%a IN (a.txt) DO ( 
04.
   for /f "delims=" %%b IN (b.txt) DO call:Do4Times "%%a" "%%b" 
05.
06.
 
07.
:Do4Times [Parameter1: eine Zeile aus Datei 
08.
set /a Ln+=1 
09.
if %Ln% GTR 1004 ( 
10.
     set /a "ln=1000"  & goto :eof 
11.
12.
Echo oder Befehl [%ln:~-3%] "%~1" "%~2" 
13.
REM Parameter 1 enthält %%a, also Zeile aus Datei a.txt;  
14.
REM Parameter 2 enthälz %%b, also eine Zeile aus b.txt 
15.
goto :eof
Gruß
Biber
Bitte warten ..
Ähnliche Inhalte
Batch & Shell

Batch: in Schleife prüfen ob ein Prozess läuft und diesen beenden

Frage von blacksunBatch & Shell10 Kommentare

Hallo, ich möchte gerne prüfen ob ein bestimmter Prozess gestartet ist. Wenn ja, dann soll dieser und noch ein ...

Batch & Shell

Batch Schleife als FOR-SCHLEIFE

gelöst Frage von mp2711Batch & Shell2 Kommentare

Mit den FOR-Schleifen habe ich mich leider bislang zu selten auseinander gesetzt, aber da ich sonst gerade nicht weiter ...

Microsoft Office

Vereinfachen einer Schleife

Frage von Jens1975Microsoft Office1 Kommentar

Hallo, ich bin neu und versuche mich jetzt mit VBA Ich möchte die Funktion Autofill durch eine Schleife ersetzen. ...

Entwicklung

PowerShell - Schleifen

gelöst Frage von 119785Entwicklung8 Kommentare

Hallo Leute, ich habe hier eine Aufgabe und brauche mal einen kleinen Tip. Entweder habe ich eine Denkbloacke oder ...

Neue Wissensbeiträge
Microsoft

Neuigkeiten zu Server und Office 365 was läuft mit was und was nicht

Tipp von AlFalcone vor 8 StundenMicrosoft

Server Betriebssysteme auf dem die verschiedenen Offices nicht supported sind: • Office 365 ist und wird nicht supported auf Windows ...

Speicherkarten

Neuer Speicherkartentyp - zunächst nur für Huawei-Smartphones (künftig auch für Notebooks u. Tablets?)

Tipp von VGem-e vor 9 StundenSpeicherkarten1 Kommentar

Servus, als ob das "Chaos" i.S. Speicherkarten noch nicht groß genug wäre?! Evtl. kommt dieser neue Kartentyp bald auch ...

Sicherheit

Diverse D-Link-Router durch drei Schwachstellen kompromittierbar

Information von kgborn vor 11 StundenSicherheit

Hat jemand D-Link-Router in Verwendung? Einige Modelle sind sicherheitstechnisch offen wie ein Scheunentor. Äußerst unschöne Sache, aber nichts neues ...

Hardware

100.000 Mikrotik-Router ungefragt von Hacker abgesichert

Information von 7Gizmo7 vor 1 TagHardware1 Kommentar

Hallo zusammen, da hier ja öfters mal von Mikrotik gesprochen wird. Trotz Updates klafft eine Sicherheitslücke in Hundertausenden Mikrotik-Routern. ...

Heiß diskutierte Inhalte
Windows 10
Sysprep Fehler im Log kann nicht starten
Frage von grillinator95Windows 1022 Kommentare

Hallo, kann leider SYSPREP nicht mehr starten, Win10 64bit. Logfile sagt folgendes: 2018-10-17 13:44:56, Info SYSPRP 2018-10-17 13:44:56, Info ...

Sicherheitsgrundlagen
EuGH-Urteil - Internetanschluss für die ganze Familie - Filesharer haften trotzdem
Frage von StefanKittelSicherheitsgrundlagen19 Kommentare

Hallo, In diesem Artikel geht es darum, dass Jemand aus der Familie ein Hörbuch illegal hochgeladen hat. Der Vater ...

Apple
MacBook Pro 2018 mit 8 GB oder 16 GB
Frage von SysAdm81Apple14 Kommentare

Hallo zusammen, ich steh vor der Überlegung mir ein MacBook Pro 13 (2018) zu kaufen. Bzgl. SSD habe ich ...

Outlook & Mail
Outlook schiebt Mails aus Posteingang sofort in den Papierkorb
Frage von hermesOutlook & Mail13 Kommentare

Hallo Outlook Fachleute, wir haben hier das Problem, dass Outlook 2010 alle ankommenden Mails seit zwei Tagen einfach in ...