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

Simple Batch-Datei soll Anzahl Dateien im Verzeichnis zählen

Frage Entwicklung Batch & Shell

Mitglied: ghostX

ghostX (Level 1) - Jetzt verbinden

05.09.2013 um 11:53 Uhr, 12821 Aufrufe, 7 Kommentare, 4 Danke

Hallo Gemeinde,

benötige eine Batch-Datei die im Verzeichnis X die Anzahl der Dateien zählt und bei mehr als bspw 100 Dateien eine andere Batch-Datei startet.
Ungefähr so:
IF Anzahl Dateien in C:\test > 100
THEN starte Programm.bat
ELSE exit

Ist wahrscheinlich was ganz simples aber habe leider überhaupt keine Ahnung von Batch und deshalb frage ich euch. Ich hoffe einer kann mir helfen.

Grüße
Mitglied: Penny.Cilin
05.09.2013 um 12:05 Uhr
Hallo,

schon mal die Suchfunktion benutzt?
Wenn ich die Begriffe dateien zählen angebe, bekomme ich hier im Forum jede Menge Treffer.


Gruss Penny.
Bitte warten ..
Mitglied: colinardo
05.09.2013, aktualisiert um 12:13 Uhr
Moin ghostX,
und täglich grüßt das Murmeltier ...
01.
@echo off 
02.
set "pfad=C:\test" 
03.
for /f %%k IN ('dir "%pfad%" /b /A-D ^| find /c /v ""') DO @( 
04.
	if %%k GTR 100 (echo Mehr als 100 Dateien) else (echo weniger als 100 Dateien) 
05.
)
Grüße Uwe
Bitte warten ..
Mitglied: ghostX
05.09.2013 um 13:02 Uhr
Hallo Uwe,

danke für die schnelle Hilfe.
Kann ich jetzt nach dem "echo Mehr als 100 Dateien" noch "start xyz.bat" schreiben damit eine andere bat aufgerufen wird und nach dem else einfach "exit" schreiben damit das Fenster geschlossen wird?
Bitte warten ..
Mitglied: colinardo
05.09.2013, aktualisiert um 18:04 Uhr
So kannst du jeden Befehl in eine neue Zeile setzen.
01.
@echo off 
02.
set "pfad=C:\test" 
03.
for /f %%k IN ('dir "%pfad%" /b /A-D ^| find /c /v ""') DO @( 
04.
	if %%k GTR 100 ( 
05.
            echo Mehr als 100 
06.
            call xyz.bat 
07.
        ) else ( 
08.
            exit 
09.
10.
)
Du kannst die Befehle alternativ auch mit einem "&" hintereinander schreiben bzw mit einem "&&" wenn der nachfolgende Befehl nur ausgeführt werden soll wenn der vorherige erfolgreich war, oder mit "||" wird der nachfolgende befehl nur ausgeführt wenn der vorhergehende fehlgeschlagen ist.

Grüße Uwe
Bitte warten ..
Mitglied: MartinBinder
05.09.2013 um 22:27 Uhr
Anmerkung:

EXIT in nem Batch bewirkt was? Genau - cmd.exe wird beendet. Damit zwar auch der Batch selbst (gewollt), aber auch ein ggf. aufrufender Batch sowie die Commandline, in der ich den Batch ausführe (meist dann ungewollt).

Besser: GOTO :EOF

@Uwe: Du hast echt Geduld Und dass find "" geht, habe ich auch noch nicht ausprobiert - ist aber ne gute Idee. Bisher hab ich immer ein abstruses Zeichen genommen, z.B. "?".

mfg Martin
Bitte warten ..
Mitglied: ghostX
06.09.2013 um 16:30 Uhr
Vielen Dank hat funktioniert!
Bitte warten ..
Mitglied: pieh-ejdsch
06.09.2013, aktualisiert um 20:43 Uhr
moin,

wenn auch schon abgehakt kann das lange Durchsuchen nach Dateien bei erreichen der 100 abgebrochen werden.
Der dir geht aber erst durchs gesamte Verzeichnis auch wenn schon lange das gefundene dasteht:
01.
dir /s /b C:\ 2>nul |find /n /v "" |findstr /bc:[100] &&echo Programm kann gestartet werden.||echo Nicht genuegend Dateien.
Bei mehreren 100000 Dateien würde dies schon etwas dauern.
Die Einfache Forschleife bietet sich dafür in einer Unteroutine an um bei Erfolg sofort aufzuhören.
01.
@echo off 
02.
setlocal 
03.
set        "Quelle=D:" 
04.
set "FilterDateien=*.txt" 
05.
 
06.
set /a         Min=100 
07.
set /a   Rekursive=1 
08.
set /a      Ordner=0 
09.
 
10.
if    "%ordner%" equ "1" (set D=/d &set "Suche=Ordner") else set "D=" &set "Suche=Dateien" 
11.
 
12.
call :test || Echo mindestes %min% %Filterdateien% %Suche% -- Programm x wird gestartet 
13.
pause 
14.
exit /b 
15.
 
16.
:test 
17.
for %%a in (%Quelle%\) do set "Quelle=%%~fa" 
18.
if "%Rekursive%" equ "1" (set R=/r "%Quelle%" &set "Quelle=") else set "R=" 
19.
set /a lfd=0 
20.
for %D% %R% %%i in ( "%quelle%%FilterDateien%" ) do @set /a lfd+=1,T=1/(min-lfd) 2>nul ||exit /b 1 
21.
Echo Es sind nur %lfd% %Filterdateien% %Suche%. 
22.
exit /b 0
Gruß Phil
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Batch-Datei soll überprüfen ob ein Verzeichnis vorhanden ist
gelöst Frage von synapsenstauBatch & Shell7 Kommentare

Moin, wie bringe ich bitte einer Batch-Datei bei, das sie "schaut" ob ein Verzeichnis vorhanden ist und wenn nicht ...

Batch & Shell
Batch Datei in zufälliges Verzeichnis navigieren
Frage von MarioBros778Batch & Shell4 Kommentare

Hey Leute, ich hätte da ein Frage: Ist es möglich mit einer cmd datei in ein zufälliges Verzeichnis zu ...

Entwicklung
Verzeichnise sichern mit batch datei (Win10)
gelöst Frage von LimbachEntwicklung13 Kommentare

Bitte um eure Hilfe für mein Problem. Ich möchte gerne ein Verzeichnis mit Unterverzeichnissen per Batch Datei mit win7 ...

XML
Vbs - simple XML Datei auslesen
gelöst Frage von DeeJayBeeXML4 Kommentare

Hallo zusammen, ich glaub, ich hab grad ne kleine Blockade oder denke viel zu kompliziert. Gegeben ist eine xml-Datei ...

Neue Wissensbeiträge
Windows 10

Autsch: Microsoft bündelt Windows 10 mit unsicherer Passwort-Manager-App

Tipp von kgborn vor 2 TagenWindows 107 Kommentare

Unter Microsofts Windows 10 haben Endbenutzer keine Kontrolle mehr, was Microsoft an Apps auf dem Betriebssystem installiert (die Windows ...

Sicherheits-Tools

Achtung: Sicherheitslücke im FortiClient VPN-Client

Tipp von kgborn vor 2 TagenSicherheits-Tools

Ich weiß nicht, wie häufig die NextGeneration Endpoint Protection-Lösung von Fortinet in deutschen Unternehmen eingesetzt wird. An dieser Stelle ...

Internet

USA: Die FCC schaff die Netzneutralität ab

Information von Frank vor 2 TagenInternet5 Kommentare

Jetzt beschädigt US-Präsident Donald Trump auch noch das Internet. Der neu eingesetzte FCC-Chef Ajit Pai ist bekannter Gegner einer ...

DSL, VDSL

ALL-BM200VDSL2V - Neues VDSL-Modem mit Vectoring von Allnet

Information von Lochkartenstanzer vor 2 TagenDSL, VDSL2 Kommentare

Moin, Falls jemand eine Alternative zu dem draytek sucht: Gruß lks

Heiß diskutierte Inhalte
Batch & Shell
Kann man mit einer .txt Datei eine .bat Datei öffnen?
gelöst Frage von HelloWorldBatch & Shell20 Kommentare

Wie schon im Titel beschrieben würde ich gerne durch einfaches klicken auf eine Text oder Word Datei eine Batch ...

LAN, WAN, Wireless
WLAN Reichweite erhöhen mit neuer Antenne
gelöst Frage von gdconsultLAN, WAN, Wireless9 Kommentare

Hallo, ich besitze einen TL-WN722N USB-WLAN Dongle mit einer richtigen Antenne. Ich frage mich jetzt ob man die Reichweite ...

Router & Routing
Wieso kann ich den UPD 7000-9000 nicht freigeben?
Frage von Jayk0bRouter & Routing8 Kommentare

Router: Telekom W 723V Ports: UDP 7000-9000 Können nicht frei gegeben werden. Benutzgrund: Rocket League 7000 – 9000 UDP ...

Router & Routing
Fritzbox Gastnetz - exposed Host - zur Sophos IPTV
Frage von medikopterRouter & Routing8 Kommentare

Hallo zusammen, ich habe eine Frage bezüglich des Fritz box Gastzugangs an einer Sophos UTM Home. An liebsten wäre ...