Jump to content

Suche nach Dateien per Batchdatei


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Hallo,

ich bin ein wenig Kommandozeilen- und Automatisierungsfan und möchte einen Rechner nach bestimmten Dateien durchsuchen, die in einer Auflistung stehen.

Nachfolgender Code macht eigentlcih schon dass, was ich möchte:

 

for /F "delims=, " %%i in (black.txt) do dir %lw%\%%i /s

 

 

In der Black.txt stehen die Begriffe, %lw% ist die Variable fürs Laufwerk.

Nun habe ich in der Datei ca. 80 Suchbegriffe stehen. Die werden nun NACHEINANDER abgearbeitet.

Es gibt aber auch die Möglichkeit, die Suchprozesse im Hintergrund ablaufen zu lassen:

 

dir test.txt /s&&dir bla.txt /s&&dir sso.bat /s&&

 

..und so weiter.. Ich bekomme mein "for" nicht dazu, die Abfrage in den Hintergrund zu schieben ... grrr.. habe schon alles mögliche probiert..

 

Habt Ihr eine Idee?? Schon mal danke schön :-)

Link zu diesem Kommentar

Mit dem Hintergrund meine ich eigentlich parallele Verabeitung mehrere Suchabfragen:

 

Ich möchte, dass der For-Befehl folgendes erzeugt:

 

dir *.txt /s && dir *.doc /s && *.bla /s && *.inf /s

 

Alle Befehle werden so gleichzeitig (im Hintergrund) abgearbeitet,

im Gegensatz zu:

 

dir *.txt /s

dir *.bat /s

dir *.doc /s

 

..die nacheinander abgearbeitet werden.

Link zu diesem Kommentar
Original geschrieben von Dr.Lecter^

hi!

das kannst du in einer batch nicht machen. batch = stapelverarbeitungsprogramm. und wie der name sagt, wird hier sequentiell ein befehl nach dem anderen abgearbeitet. also gibt es in diesen programmen keine pseudo-parallelität.

 

lg

dani

 

p.s. warum willst du die "gleichzeitigkeit" haben? was willst du damit bezwecken?

 

Ich bezwecke damit Schnelligkeit. Ich habe eine Liste von ca. 200 Dateinnamen, nach denen gesucht werden soll.

Am krassesten wirkt:

 

for /F "delims=, " %%i in (black.txt) do start dir %lw%\%%i /s

 

..dann öffnen sich 200 Eingabeaufforderungen,

 

während

 

for /F "delims=, " %%i in (black.txt) do dir %lw%\%%i /s

 

Nacheinander die Begriffe der black.txt abarbeitet,

 

im Vergleich dazu:

 

dir datei1.txt /s & dir datei2.txt/s & dir datei3.txt /s & datei4.txt

 

ist bedeutend schneller und sucht alle Dateien in einer Suche.

 

Ich hatte auch schon überlegt, mittels Batch einen neuen Batch zu erzeugen, wobei die Suchbegriffe auch hintereinander gestellt werden, das gelingt mir auch nicht...

 

Bei der Bash (Linux) ist es z.b. sehr leicht möglich, eine Batch in den Hintergrund zu schieben, dagegen ist das hier EDV-Steinzeit ;-))

Link zu diesem Kommentar

hi!

 

also das mit "start" ist klar. wird halt bei jedem schleifendurchlauf ein neuer (zusätzlicher) kommandointerpreter geöffnet ;)

 

ob die beiden von dir angeführten varianten performanceunterschiede zeigen?! :suspect:

bei einem schnellen rechner sollte dir das nicht auffallen!

 

ja aber vorteil der verwendung einer for schleife liegt ja wohl eindeutig auf der hand. wenn du 80 suchkriterien hast, wirst du ja nicht per hand alle dir-befehle mit "und" verknüpfen oder? :suspect:

 

...dass linux-shells mächtiger sind als dos-shells brauchen wir hier wohl nicht diskutieren ;)

 

lg

dani

 

p.s. also wenn du schon so ein automatisierungsfan ist, würde ich dir eine mächtigere sprache empfehlen. das gleiche machst du mit einem 20 zeilen java/c++ programm performant :)

 

hast du dir schon mal FINDSTR angeschaut?

ich glaub das brauchst du!

Link zu diesem Kommentar

 

p.s. also wenn du schon so ein automatisierungsfan ist, würde ich dir eine mächtigere sprache empfehlen. das gleiche machst du mit einem 20 zeilen java/c++ programm performant :)

..das eine was man will, das andere, was man kann ;)

 

ich bin kein guter Programmierer, ein wenig batch bzw. shellscript bekomme ich noch so gerade hin, von Java, c++ habe ich leider keine Ahnung.. wird auch hier (Stadt Köln) nicht in dem Bereich eingesetzt..

Wenn ich dürfte, hätte ich schon längst Cygwin hier, das ist ganz nett..

 

hast du dir schon mal FINDSTR angeschaut?

ich glaub das brauchst du!

[/b]

 

Ja, eigentlich schon, ich war aber der Meinung, dass dieses nur IN Dateien nach Textmustern sucht und nicht Dateien direkt.. ich schau noch mal.

 

Vielen Dank :-)

Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...