Per batch datei txt finden und löschen
Hallo liebe Administratoren Gemeinde,
Ich habe für den anfang gleich eine Frage:
Ich habe ein Skript geschieben, wo er die Datei TESCHT.txt sucht und danach "erfolgreich" hineinschreibt.
@echo off
for /f "delims=" %%a IN ('dir /b /s TESCHT.txt') do echo "erfolgreich" >> %%a
Das Funktioniert wunderbar.
Nun möchte ich mit einem ähnlichen skript alle files durch suchen mit LOESCHEN.txt und diese löschen.
Das file LOESCHEN.txt befindet sich in duzenden von Userverzeichnisen.
Bei folgendem Skript sagt mir cmd nur: Das System kann den angegebenen Pfad nicht finden.
@echo off
for /f "delims=" %%a IN ('dir /b /s LOESCHEN.txt') do del %%a
Wie kann ich ein solches Skript schreibem?
Herzlichen Dank für eure Hilfe!
Ich habe für den anfang gleich eine Frage:
Ich habe ein Skript geschieben, wo er die Datei TESCHT.txt sucht und danach "erfolgreich" hineinschreibt.
@echo off
for /f "delims=" %%a IN ('dir /b /s TESCHT.txt') do echo "erfolgreich" >> %%a
Das Funktioniert wunderbar.
Nun möchte ich mit einem ähnlichen skript alle files durch suchen mit LOESCHEN.txt und diese löschen.
Das file LOESCHEN.txt befindet sich in duzenden von Userverzeichnisen.
Bei folgendem Skript sagt mir cmd nur: Das System kann den angegebenen Pfad nicht finden.
@echo off
for /f "delims=" %%a IN ('dir /b /s LOESCHEN.txt') do del %%a
Wie kann ich ein solches Skript schreibem?
Herzlichen Dank für eure Hilfe!
Please also mark the comments that contributed to the solution of the article
Content-Key: 146115
Url: https://administrator.de/contentid/146115
Printed on: April 24, 2024 at 14:04 o'clock
3 Comments
Latest comment
Zitat von @IT-it-self:
Hallo liebe Administratoren Gemeinde,
Ich habe für den anfang gleich eine Frage:
Ich habe ein Skript geschieben, wo er die Datei TESCHT.txt sucht und danach "erfolgreich" hineinschreibt.
Hallo liebe Administratoren Gemeinde,
Ich habe für den anfang gleich eine Frage:
Ich habe ein Skript geschieben, wo er die Datei TESCHT.txt sucht und danach "erfolgreich" hineinschreibt.
moin, willkommen und "sorry" vorweg...
Batche, die nicht so laufen, wie man will haben am besten kein führendes @echo off"
Und wenn der Pfad ein Leerzeichen hat, dann - und daher hast Du das Script ja auch mit dem Delims= versorgt - findet der das natürlich nur, wenn es
zwischen zwei " steht.
for /f "delims=" %%a in ('dir /b /s TESCHT.txt') do del "%%a"
Gruß
edit @3220 -hmmm.... setzen "6"
btw: zitiere mich mal - um den da auch nutzen zu können <code> </code> - den hab ich auch "geklaut"
Edit² dann leg dich wieder hin, da macht das 6 ja eh mehr Spass....
Hallo und willkommen im Forum It-it-self.
Die Batchdatei startet im aktuellen Verzeichnis und findet dort ggfs nichts.
Du musst ggfs einen definierten Startpfad mit üübergeben oder vorher dorthin wechseln.
Die Fehlermeldung lässt sich wenn wirklich nichts gefunden wird mit 2^>NUL unterdrücken.
Code den du postest solltest du zur besseren Les-/Referenzierbarkeit in
Das Del ist hier mit einem Echo entschärft
Gruß
LotPings
Edit war zu schnelll mit Fehlern gepostet.
Timos Anführungszeichen ergänzt.
@timmo, ja du hast ja recht - ich finds grad nicht - ausserdem ist es sowieso zu heiss -
Die Batchdatei startet im aktuellen Verzeichnis und findet dort ggfs nichts.
Du musst ggfs einen definierten Startpfad mit üübergeben oder vorher dorthin wechseln.
Die Fehlermeldung lässt sich wenn wirklich nichts gefunden wird mit 2^>NUL unterdrücken.
Code den du postest solltest du zur besseren Les-/Referenzierbarkeit in
< code> und < /code>
-Tags einfassen@echo off
for /f "delims=" %%a IN ('dir /b /s "%USERPROFILE%\TESCHT.txt" 2^>NUL') do Echo Del "%%a"
Gruß
LotPings
Edit war zu schnelll mit Fehlern gepostet.
Timos Anführungszeichen ergänzt.
@timmo, ja du hast ja recht - ich finds grad nicht - ausserdem ist es sowieso zu heiss -