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

Alle Dateien in einem bestimmten Verzeichnis und allen darin enthaltenen Unterverzeichnissen eines bestimmten Namens ausführen lassen.

Frage Entwicklung Batch & Shell

Mitglied: urknall

urknall (Level 1) - Jetzt verbinden

09.01.2006, aktualisiert 14:23 Uhr, 5584 Aufrufe, 4 Kommentare

Ein kleines Problem, welches es zu lösen gibt.
Ich will in einem bestimmten Verzeichnis und allen darin enthaltenen Unterverzeichnissen alle Dateien eines bestimmten Namens ("install.cmd") ausführen lassen.

FOR /R pfad\ %%i IN (install.cmd) DO CALL %%i macht ja eigentlich auch schon das Gewünschte, allerdings wird auch versucht in Unterverzeichnissen, die nur existieren aber die Datei nicht enhalten auszuführen und es wird eine Fehlermeldung ausgespuckt weil die Datei nicht existiert.

Habe versucht ein IF EXISTS einzubauen, aber bin bis jetzt gescheitert, da das ganze syntaktisch nicht verarbeitet werden kann.

Hat jemand eine elegante Lösung für mein Problem parat?

Grüße Urknall
Mitglied: fpschultze
09.01.2006 um 13:13 Uhr
Hi.

Es müsste es mit der folgenden Befehlszeile klappen:

01.
FOR /R pfad\ %%i IN (install.cmd) DO IF EXIST "%%i" CALL "%%i"
Ist aus der Hüfte geschossen ähm ich meine nicht getestet.

Viele Grüße
Bitte warten ..
Mitglied: urknall
09.01.2006 um 13:44 Uhr
EDIT: Ich nehme alles zurück und behaupte das Gegenteil ;)

Falls jemand das vorher Geschriebene von mir gelesen hat vergesst es! Falsch getestet. Es funktioniert so wunderbar.

Vielen Dank Frank-Peter

Gruß
Bitte warten ..
Mitglied: Biber
09.01.2006 um 14:23 Uhr
..aus der Hüfte schiess ich auch gern..

FOR /R pfad\ %%i IN (.) DO IF EXIST "%%i\install.cmd" CALL "%%i\install.cmd"

Auch ungetestet und gefühlsmäßig genauso richtig

Gruß Biber
[Edit]
uuups.. da war ich zeitgleich mit Deinem Edit.
habe allerdings auch fpschultzes Zeile nicht getestet, ebensowenig wie meine.
[/Edit]
Bitte warten ..
Mitglied: fpschultze
09.01.2006 um 14:23 Uhr
Eigenartig. Also die Fehlermeldung tritt bei "IF EXISTS ..." auf, weil IF die Anweisung EXISTS (mit S am Ende) nicht kennt. Aber mit "IF EXIST" sollte es klappen.

Alternativ kannst Du es auch so machen:

01.
For /F "Tokens=*" %%i In ('Dir pfad\install.cmd /S /B') Do Call "%%i"
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Sticky Notes - Autostart unterbinden

Tipp von Pedant zum Thema Windows 10 ...

Ähnliche Inhalte
Batch & Shell
gelöst Programm in allen Unterverzeichnissen ausführen (8)

Frage von Rotnasenkater zum Thema Batch & Shell ...

Windows Systemdateien
gelöst Remoteregistry nur von Domänenadmins ausführen lassen (3)

Frage von M.Marz zum Thema Windows Systemdateien ...

Heiß diskutierte Inhalte
Batch & Shell
gelöst Base64 Decode (Batch,VBS) (26)

Frage von clragon zum Thema Batch & Shell ...

Router & Routing
Tipps für Router (ca. 100 clients, VPN) (17)

Frage von oel-auge zum Thema Router & Routing ...