HX3 Foren

HX3 Foren (https://hx3.de/)
-   Software- und Webentwicklung (https://hx3.de/software-webentwicklung-23/)
-   -   Hilfe bei Batch Programm (https://hx3.de/software-webentwicklung-23/hilfe-batch-programm-20613/)

Benn1000 23.04.2011 16:54

Hilfe bei Batch Programm
 
Hallo, ich habe ein kleines problem mit meinem Batch Programm.
das Problem sieht wie folgt aus:
das Programm durchsucht den PC nach bestimmten dateien. wenn es eine davon findet soll es ein weiteres Programm starten und wenn es sie nicht findet soll sich das programm beenden. für das suchen benutze ich diesen script: for /F "delims=, " %%i in (dateien.txt) do dir %lw%\%%i /s
das funktioniert ja auch ganz gut aber wie bekomme ich es hin das bei einem fund einer datei ein zweites programm gestartet wird? (oder halt bei keinem fund das programm beendet wird)

ich weis das die frage warscheinlich ganz einfach zu lösen ist aber ich komme einfach nicht drauf wie der script lautet
(zu dumm oder schon zu lange am pc):D

ps: googlen hat auch nicht geholfen

flickflack 27.04.2011 13:19

Google sagt bei der Suche nach "windows batch if file exists": http://aumha.org/a/batches.php im Bereich IF and IF NOT Commands

Zitat:

Zitat von entsprechendem Beispiel
IF EXIST some.txt COPY c:/some.dll %windir%/SYSTEM/some.dll

Du könntest innerhalb der For-Schleife schauen ob die aktuell ausgelesene Datei existiert und ggf. entsprechende Calls machen.

Edith: Ansonsten hau "Rockhount" hier via PM an, der ist denk ich ganz gut in Windows-Skripting.

Benn1000 27.04.2011 18:24

Hi,
ich hab nicht Ganz Kapiert wie du das mit dem auslesen in der For Schleife
umsetzen willst könntest du mir ein Beispiel geben?

Edit: egal ich hab jetzt einen anderen weg gefunden der zwar etwas länger dauert aber er Funktioniert fast genauso gut. Danke Trozdem.

flickflack 27.04.2011 18:34

Ich skripte keine Shell unter Windows, daher konnte ich auch nur suchen. Aber wenn ich mir dein Snippet anschaue

Zitat:

for /F "delims=, " %%i in (dateien.txt) do dir %lw%\%%i /s
Dann könnte rein theoretisch ja sowas funzen (falls man das in einer Batch so schachteln kann)

Zitat:

for /F "delims=, " %%i in (dateien.txt) do IF EXIST %%i <MACHIRGENDWAS>
Aber wenn du die Lösung hast, dann gut. Ansonsten Rockhount, oder glei ne ordentliche Sprache :D

Benn1000 27.04.2011 19:20

Danke der code hier funktioniert
for /F "delims=, " %%i in (dateien.txt) do IF EXIST %%i <MACHIRGENDWAS>

:daumen:


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:49 Uhr.

Angetrieben durch vBulletin, Entwicklung von Philipp Dörner & Tobias


SEO by vBSEO 3.2.0 ©2008, Crawlability, Inc.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119