Batch Script welches Pfad zu allen a.txt Dateien ausgibt?

Mitglied: webtrajo

webtrajo (Level 1) - Jetzt verbinden

26.04.2010 um 14:52 Uhr, 3363 Aufrufe, 16 Kommentare

Hallo,

ich bin auf der Sucher nach einem Script welches einen Verzeichnispfad auf meiner
Festplatte nach "a.txt" durchsucht und mir dazu die dazugehörigen Pfade ausgibt.

Hat jemand eine Idee?

Vielen Dank!
Gruß
Mitglied: Dani
26.04.2010 um 14:56 Uhr
Hi,
versuch es mal manuell in der Konsole mit "dir /s /b a.txt". Damit sollten alle Dateien gefunden und ausgegeben werden.


Grüße,
Dani
Bitte warten ..
Mitglied: webtrajo
26.04.2010 um 15:05 Uhr
Hallo,
leider kein Erfolg. Gibt es eine andere Möglichkeit?
Gruß
Bitte warten ..
Mitglied: edepfau
26.04.2010 um 15:05 Uhr
Auf der Kommandozeile listet
alle Dateien namens "a.txt" in E:\PFAD und allen Unterverzeichnissen auf, vollständig mit Pfad.

gibt nur die Pfade zurück. Allerdings auch mehrfach, wenn es mehr als ein Treffer pro Verzeichnis gibt.



Hast Du wirklich vorher schon alles durchprobiert gehabt?

Gruss,
Ede
Bitte warten ..
Mitglied: Dani
26.04.2010 um 15:10 Uhr
Hi,
seltsam...was für ein Betriebssystem benutzt du?

Bei mir sieht das so aus:
Läuft bei mir unter Windows 7...


Grüße,
Dani
Bitte warten ..
Mitglied: bastla
26.04.2010 um 15:26 Uhr
@edepfau
Schaut auch lustig aus, wenn Du
draus machst ...

Insofern würde ich Danis Ansatz bevorzugen (und zur Not mit "/a-d" ergänzen).

Grüße
bastla
Bitte warten ..
Mitglied: edepfau
26.04.2010 um 15:42 Uhr
das scheint eine Eigenart der for-Schleife zu sein..kann aber sehr einfach durch
behoben werden.
Inzwischen habe ich mich darum gekümmert, den uniq-Befehl nachzubilden, damit die Pfade nur einmal angezeigt werden.

Das geht in einem Batchfile z.B. so
Als erster Parameter wird der Dateiname oder ein Muster erwartet (*.log). Ausserdem werden hier Pfade mit Leerzeichen richtig behandelt.

Der Vorschlag mit "dir /s" hat den Nachteil, dass keine Pfade aufgelistet werden.
Bitte warten ..
Mitglied: bastla
26.04.2010 um 16:07 Uhr
@edepfau
Der Vorschlag mit "dir /s" hat den Nachteil, dass keine Pfade aufgelistet werden.
Sollte wirklich "nur Pfade" gemeint gewesen sein, dann wäre natürlich eine Schleife erforderlich - zB in der "/f"-Variante (müsste sich dann auch nur um die tatsächlichen Treffer kümmern) - konkret:
Abgesehen davon würde ich "Pfad" trotzdem nicht so eng auslegen und daher eher "%%~dpi" verwenden ...

... was allerdings beides letztlich nur webtrajo (BTW: Willkommen im Forum!) wirklich wissen kann.

Grüße
bastla

P.S.: "unique" je Verzeichnis sollten Dateien namens "a.txt" eigentlich ohnehin sein ...
Bitte warten ..
Mitglied: Biber
26.04.2010 um 16:19 Uhr
Moin bastla und edepfau,

Zitat von bastla:
@edepfau
Schaut auch lustig aus, wenn Du
draus machst ...
Zitat von edepfau:
das scheint eine Eigenart der for-Schleife zu sein..kann aber sehr einfach durch
behoben werden.
Nun macht mal nicht die jungen Nachwuchstalente nervös.
So schlimm haben es die RedmonderInnen ja auch nicht zusammenphantasiert.

Der oben von bastla angesprochene Effekt tritt natürlich nur auf, wenn man/frau es zulässt - dadurch, dass eine Datei EXAKT gesucht / Wildcards weggelassen werden.

Wird der Dateiname "ichBinNichtDa.bla" um ein Wildcard-Fragezeichen z.B am Ende ergänzt, dann kommt kein vermeintlicher Fehlalarm.
Oder nochmal zur Verdeutlichung:
Grüße
Biber

P.S.
Der Vorschlag mit "dir /s" hat den Nachteil, dass keine Pfade aufgelistet werden.
Dann könnten wir doch "Dir /s /b" nehmen...,-)
Bitte warten ..
Mitglied: edepfau
26.04.2010 um 16:34 Uhr
krank, aber cool; danke, wieder was gelernt.
Ich werde immer noch nicht glücklich mit "dir /s/b". Anders als der OP suche ich nämlich gleich nach einem wildcard (*.log), nach der Überlegung "kann er wildcard, kann er auch exakte Namen". Dann brauche ich aber ein uniq hinterher, um mehrfache Pfade auszusieben.
Ist doch gelungen, oder? (uniq meine ich)

Gruss,
Ede
Bitte warten ..
Mitglied: 77559
26.04.2010 um 16:53 Uhr
Zitat von edepfau:
Dann brauche ich aber ein uniq hinterher, um mehrfache Pfade auszusieben.
Ist doch gelungen, oder? (uniq meine ich)
Hallo Ede,

wenn man mal vom didaktischen Nutzen der Variable "_this" absieht ließe sich das kürzer formulieren:
Gruß
LotPings
Bitte warten ..
Mitglied: edepfau
26.04.2010 um 17:09 Uhr
Hallo LotPings,

ja, viel klarer jetzt:
In der Zeile 2 war noch ein "%" zuviel. Der Code wird jetzt auch etwas schneller laufen, weil weniger shells gestartet werden müssen.

Falls der OP noch mitliest: im Batchfile weiter oben muss jetzt natürlich CALL :UNIQ stehen.

NB: "echo.%var" und "echo %var" sind äquivalent, oder kenne ich da was noch nicht?
Bitte warten ..
Mitglied: 77559
26.04.2010 um 17:27 Uhr
Zitat von edepfau:
NB: "echo.%var" und "echo %var" sind äquivalent, oder kenne ich da was noch nicht?
Alte (gute) Gewohnheit, wenn eine Variable keinen Inhalt hat, verhindert der Punkt das Echo den Satus [ON|OFF] zurückgibt.

Gruß
LotPings
Bitte warten ..
Mitglied: bastla
26.04.2010 um 17:45 Uhr
... verhindert der Punkt das Echo den Satus [ON|OFF] zurückgibt.
... es darf aber zB auch ein "\", ein "," oder ein ";", oder wenn Du magst auch ein "+" sein - so, wie eben bei Bedarf auch eine Leerzeile erzeugt werden kann ...
---
So schön die "UNIQisierung" inzwischen auch umgesetzt ist - ich sehe in diesem Fall weiterhin keine Notwendigkeit dafür (es sei denn, webtrajo hätte tatsächlich mehrere "a.txt" in einem Verzeichnis versammelt ) ...

Grüße
bastla
Bitte warten ..
Mitglied: 77559
26.04.2010 um 18:00 Uhr
Zitat von bastla:
... es darf aber zB auch ein "\", ein "," oder ein ";", oder wenn Du magst auch ein "+" sein - so, wie eben bei Bedarf auch eine Leerzeile erzeugt werden kann ...
Wenn schon, denn schon ":" und "/" tun es auch.
Im Usenet gab es mal eine Untersuchung dazu, welche der Trenner schneller verarbeitet wurden, aber bei der Geschwindigkeit heutiger CPUs ist das marginal.

Gruß
LotPings
Bitte warten ..
Mitglied: Biber
26.04.2010 um 18:04 Uhr
[OT] @bastla
Zitat von bastla:
es sei denn, webtrajo hätte tatsächlich mehrere "a.txt" in einem Verzeichnis versammelt ) ...

Ich nehme doch stark an, dass so ein 64bit-Win7-OktaCore-Bolide auch Dateien in 3 oder 4 Dimensionen stapeln kann, oder?

Sonst hätten wir doch alle immer noch mit Windows XP mailen und Solitaire spielen können...

Grüße
Biber
[/OT]
Bitte warten ..
Mitglied: bastla
26.04.2010 um 18:05 Uhr
[OT]
@LotPings
Ja willst Du denn Biber gar nix mehr übrig lassen?

Grüße
bastla
[/OT]
Bitte warten ..
Heiß diskutierte Inhalte
Benchmarks
M.2 SSD und RAM zu langsam
solved MarkowitschQuestionBenchmarks22 Comments

Hallo zusammen, ich habe mir folgenden PC zusammengestellt : MB: ASUS - ROG Strix Z490-E Gaming Mainboard (90MB12P0-M0EAY0) CPU: ...

Databases
SQL Null Abfrage
solved newit1QuestionDatabases18 Comments

Hallo zusammen, ich versuche eine CSV in meine Datenbank zu importieren. Das klappt auch. Die CSV hat folgendes Format: ...

Routers & Routing
OPNSense statt Endian Firewall
hannes.hutmacherQuestionRouters & Routing14 Comments

Hallo zusammen, wir setzen hinter der pfSense, die die direkt am Internet hängt, noch eine Endian Firewall ein. Dazwischen ...

Peripherals
Suchen Outdoor Wandler von LWL auf Cat 7 Kabel
solved pavelruQuestionPeripherals13 Comments

Hallo Zusammen, wir suchen einen Outdoor Konverter welcher von einem kommenden LWL Kabel auf CAT 7 Lan Kabel weiter ...

Windows 10
Amazon-Werbung im MS Edge Chromium
emeriksQuestionWindows 1012 Comments

Hi, habe hier ein Win10 Pro. Seit ca. 2-3 Wochen habe ich gelegentlich den Effekt, dass beim Suchen im ...

Routers & Routing
VPN mit zweiter Fritzbox hinter einer 7590
Eagle69QuestionRouters & Routing11 Comments

Hallo zusammen, ich habe folgendes Problem. Auf der einen Seite steht ein Router von Bintec, dass Model BI.IP+ (vergleichbar ...

Ähnliche Inhalte
Batch & Shell

Batch Ordner durchsuchen nach Datei und Pfad ausgeben

gelöst easy4breezyFrageBatch & Shell2 Kommentare

Hi, ich möchte mehrere Ordner/Festplatten nach einer Datei bzw. einem "Suchwort" durchsuchen und falls diese Datei/Dateien existiert/en den Pfad ...

Batch & Shell

Batch-Script, Programm mit Datei öffnen

Leitz42FrageBatch & Shell4 Kommentare

Hallo werte Forengemeinde! Ich habe ein vermeintlich einfaches Problem. Ich möchte schlicht ein Programm und eine Datei (in eben ...

Microsoft

Batch Datei zum Kopieren bestimmter ordner mit Pfad

gelöst eivloxFrageMicrosoft6 Kommentare

Hallo zusammen , Hab schon ein bisschen gegoogled aber nichts passendes gefunden . Folgendes Problem: Ich möchte einen Ordner ...

Batch & Shell

Batch script: Problem beim Kopieren und bearbeiten, dynamischen Pfad ermitteln

gelöst HedgehogiFrageBatch & Shell31 Kommentare

Hallo Community, leider habe auch ich ein Problem mit meinem batch script und hoffe ihr könnt mir weiter helfen. ...

Batch & Shell

Batch Dateivergleich: Pfad auslesen

gelöst icepick1661FrageBatch & Shell7 Kommentare

Hallo, ich bin neu hier, grüße also alle; ich habe ein Batch-Problem, mit dem ich trotz langer Googelei einfach ...

Batch & Shell

BATCH-Script

gelöst hipfzwirgelFrageBatch & Shell9 Kommentare

Hallo Batch-Profis, ich habe ein Batch-Script geschrieben mit welchem ich einen Treiber unattended installieren kann. Dazu benötige ich 5 ...

Neue Fragen
Administrator Magazin
11 | 2020 Virtualisierung ist aus der IT nicht mehr wegzudenken. In der November-Ausgabe des IT-Administrator Magazins dreht sich der Schwerpunkt um das Thema "Server- und Storage-Virtualisierung". Darin erfahren Sie, wie sich die Virtualisierungstechnologie entwickelt hat, welche Varianten es im Bereich Server und Speicher gibt und wie ...
Neue Beiträge
Neue Jobangebote
Server- und Storage-VirtualisierungServer- und Storage-VirtualisierungBerechtigungs- und IdentitätsmanagementBerechtigungs- und IdentitätsmanagementWebdienste und -serverWebdienste und -serverDatenbankenDatenbankenMonitoring & SupportMonitoring & SupportHybrid CloudHybrid Cloud