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

Suchschleife Batch

Mitglied: Nathalem

Nathalem (Level 1) - Jetzt verbinden

11.04.2013 um 20:48 Uhr, 1437 Aufrufe, 6 Kommentare, 2 Danke

Ich versuche eine Batchdatei du schreiben die einen Ordner durchsucht

Hallo zusammen,

durch unverständige Fehlerhafte Exporte ist folgendes Problem aufgetreten.
Es gibt knapp 100 Ordner mit einer Hand voll bis mehrere 1000 HTML Dateien darin die aufsteigend durchnummeriert sind jedoch gibt es bei einigen der größeren das Problem das aufgetreten das einige Dateien Fehlen.
Im Ordner sieht das dann circa so aus

1
2
3
4
5
.....
231
232
233
234
271
272
....
719
720
721
739
740
741
742
..

Wie ersichtlich ist fehlen 2 Bereiche.
Ich würde nun gerne eine Batchdatei schreiben die im inneren des Ordners gestartet wird und guckt
gibt es "1.html"
wenn nein -> 1.html fehlt
wenn ja -> gibt es 2.html
wenn nein -> 2.html fehlt
usw.

Wenn eine Datei fehlt soll die Schleife abgebrochen werden und eine MassageBox oder ähnliches auftauchen in der man darüber informiert wird damit man die restlichen Dateien neu exportieren kann.

Wäre super wenn ihr mir helfen könntet.
Mitglied: rubberman
11.04.2013, aktualisiert um 21:33 Uhr
Hallo Nathalem, willkommen im Forum.

Versuche mal diesen Code:
01.
@echo off &setlocal EnableDelayedExpansion 
02.
set /a count=0, max=0 
03.
for /f "delims=" %%i in ('dir /a-d /b *.html^|findstr /rixc:"[1-9][0-9]*\.html"') do ( 
04.
  set /a count+=1 
05.
  if %%~ni gtr !max! set /a max=%%~ni 
06.
07.
echo Anzahl HTML Dateien: %count% 
08.
echo Groesster Dateiname: %max%.html 
09.
echo( 
10.
if %count%==%max% (echo *** OK ***) else echo *** Dateien fehlen^^! *** 
11.
echo( 
12.
pause
Eine Unsicherheit besteht aber bereits im Ansatz. Wenn nur die letzten Dateien fehlen sollten (also nicht exportiert wurden), wirst du das so nie feststellen können.

Grüße
rubberman
Bitte warten ..
Mitglied: Endoro
11.04.2013, aktualisiert um 21:42 Uhr
Hallo Nathalem,

zeigt dir fehlende Dateien im aktuellen Ordner an:

01.
@echo off&setlocal enabledelayedexpansion 
02.
for %%i in (*.html) do if %%~ni gtr !cnt! set "cnt=%%~ni" 
03.
for /l %%i in (0,1,%cnt%) do if not exist "%%i.html" echo missing: %%~fi.html 
04.
pause
Du musst dafür sorgen, dass die "letzte" mit dem grössten Wert vorhanden ist.

Gruss!
Bitte warten ..
Mitglied: Nathalem
11.04.2013 um 21:47 Uhr
Funktioniert schon mal ganz gut.
Vielen dank für den Tipp aber das unwahrscheinlich da das Programm aus irgeneinem Grund von hinten und von vorne exportiert.
Ich habe eben mal den Fehler provoziert indem ich Dateien weg genommen habe.
Das Programm sagt zwar das Dateien Fehlen jedoch nicht welche.
Kannst du etwas machen damit das Programm wenn etwas fehlt sofort Stoppt und sagt welches fehlt?
Bitte warten ..
Mitglied: Nathalem
11.04.2013 um 21:49 Uhr
warte ich teste erstmal die Antwort von Endoro
Bitte warten ..
Mitglied: Nathalem
11.04.2013 um 21:56 Uhr
hat geklappt ihr seid super
Bitte warten ..
Mitglied: rubberman
11.04.2013, aktualisiert um 22:43 Uhr
Hallo Nathalem,

eine Bemerkung noch. Beide Lösungen stoppen nicht bei der ersten fehlenden Datei. Der Grund dafür ist, dass zunächst die Datei mit der größten Zahl als Dateiname gefunden werden muss. Während im Explorerfenster die Dateien numerisch geordnet erscheinen, wird in der Batchdatei (auf einem NTFS) die Sortierung alphanumerisch durchgeführt. Bei 1000 Dateien also bspw. so:
1.html 
10.html 
100.html 
1000.html 
101.html 
102.html 
103.html 
104.html 
105.html 
106.html 
107.html 
108.html 
109.html 
11.html 
...
Man muss (wie Endoro gezeigt hat) anschließend numerisch aufsteigend jede einzelne Datei vergleichen um die fehlenden Dateien entsprechend geordnet anzuzeigen.

Grüße
rubberman
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Batch: Batch in batch in cfg schreiben
gelöst Frage von pixelBfBatch & Shell2 Kommentare

Hayy, ich bin neu hier im forum:)) Meine frage: Kann ich eine batch schreiben die was in eine batch ...

Batch & Shell

Batch aus Batch mit anderen Rechten starten

gelöst Frage von thilo-55Batch & Shell15 Kommentare

Hallo zusammen, bin schier am verzweifeln: System ist Win7 mit Benutzer "User" mit user-rechten und "Admin" mit admin-rechten (wer ...

Batch & Shell

Wie ändert eine batch eine bestimmte zeile in einer anderen batch

Frage von J4YK0BBatch & Shell3 Kommentare

Wie schreibt eine batch eine andere batch um, aber nur eine SPEZIELLE zeile? Das System ist wiefolgt. Man gibt ...

Batch & Shell

Womit kann ich in einer Batch viertelstündlich eine andere Batch aufrufen?

Frage von red-eyeBatch & Shell16 Kommentare

Hallo allerseits! Seit drei Stunden versuche ich selbst einen geeigneten Befehl zu finden, bzw. hier im Forum eine Antwort ...

Neue Wissensbeiträge
Sicherheit

Zero Day-Schwachstelle im Internet Explorer - wird von APT bereits ausgenutzt

Information von kgborn vor 3 StundenSicherheit

Im Kernel des Internet Explorer scheint es eine Zero Day-Lücke zu geben, die von staatlichen Akteuren (APT) im Rahmen ...

Microsoft
Folder Security Viewer-Lizenzen zu gewinnen
Information von kgborn vor 3 StundenMicrosoft

Ich nehme das Thema mal in Absprache mit Frank hier auf, da es für den einen oder anderen Administrator ...

Hardware

Feueralarm killt Festplatten in Rechenzentrum - führt zu größerem Ausfall

Information von kgborn vor 3 StundenHardware6 Kommentare

Noch ein kleiner Beitrag für Administratoren, die in Rechenzentren aktiv sind - so als Fingerzeig. Denn es gibt Szenarien, ...

MikroTik RouterOS

Mikrotik Advisory: Vulnerability exploiting the Winbox port

Information von colinardo vor 3 StundenMikroTik RouterOS

Brand aktuell: Eine Schwachstelle im Winbox-Port bei Mikrotik Routern erlaubt das Auslesen der User-Datenbank der Router. Patch ist aktuell ...

Heiß diskutierte Inhalte
Linux
Linux Server oder Windows Server - lohnt eine Umstellung auf Linux und ebenso basierende SW bei einer langfristigen Planung?
Frage von motus5Linux22 Kommentare

Wir brauchen bei uns einen neuen Server. Dieser wird als Fileserver, Domäne Controller sowie Exchange Server verwendet. Wir versuchen ...

Netzwerkgrundlagen
VLAN - Offene Fragen
Frage von KnettenbrechNetzwerkgrundlagen17 Kommentare

Hallo zusammen, ich befasse mich derzeit mit dem Thema VLAN. Hierzu habe ich schon einige Guides gelesen, einschließlich des ...

DSL, VDSL
ISP Wechsel auf Vodefone Koax, Gebäudeverkabelung nur per Cat 7
gelöst Frage von wusa88DSL, VDSL13 Kommentare

Hallo Zusammen, ich bin momentan bei Mnet als Glasfaser Kunde und möchte Preis/Leistungs-Technisch zu Kabel Deutschland / Vodafone wechseln. ...

Windows Server
Domänencontroller trennen
Frage von Akit57Windows Server13 Kommentare

Hallo, ich hoffe das mir hier jemand meine Frage trotz der spärlichen Informationen die ich geben kann beantworten kann: ...