Ordner nach bestimmten Dateien durchsuchen
Hallo, ich woltle meinen PC nach bestimmten Dateien in einem bestimmten ordner durchsuchen. und anschließend verschieben.
Aber heir erstmal mein code (bin erst neu, würde mich über Verbesserungen sehr freuen)
Das script soll also den ordner C:\BATCH\ordnen\ nach .z* und .r* durchsuchen. Dazu habe ich erstmal den ordner mit dir inklusive Utnerverzeichnisse aufgelistet, sodass ich dann n einer txt datei in etwa folgende Eitnräge habe: "C:\BATCH\ordnen\ordner_1\test\1.zip"
Wenn also eine Datei mit der Endung .z* vorhanden ist, soll er den ordner MIT seienr kompletten Struktur in ein neues Verzeichnis kopieren.. also es soll dann so aussehen "C:\BATCH\geordnet\ordner_1\test\1.zip"
Mein script fuznt an dieser Stelle nicht,d a ich nicht weiß, wie ich der abt die Zieldatei angeben soll/kan, da ich in der FOLDERS:TXT Datei einträge mit dem laufwerskbuchstaben habe.
Ich habe mir gedacht, dass ich einfach das C:\BATCH\ lösche, sodass n ur der rest übrig bleibt.. aber auch das bekomme ich nicht hin
Wenn irh mir eine Lösung schreiben könntet, wäre das super entt. Ich würde mich rieseig freuen.. Es wäre auchs chön, wenn ihr mich auf etweilige Fehler aufmerksam machen könntet
ALso nochmals Danke
mfg
Hackse
[Edit Biber 18.8.2007]
Originaltitel "Ordner anch bestimtmen Dateien durchsuchen" redaktionell angepasst, Beitrag auf "gelöst" gesetzt und geschlossen.
Aber heir erstmal mein code (bin erst neu, würde mich über Verbesserungen sehr freuen)
@ECHO OFF
CLS
Setlocal
SET BATCH_DIR=C:\BATCH\
SET ORDNEN=C:\BATCH\ordnen\
SET GEORDNET=C:\BATCH\geordnet\
dir %ORDNEN% /S /A:D /O:N /B>%BATCH_DIR%FOLDERS.TXT 2>nul
for /f "tokens=1*" %%a IN (%BATCH_DIR%FOLDERS.TXT) DO (
ECHO - %%a
IF EXIST %%a\*.r*
(
ECHO ^> ..RARs existieren
ECHO ^> ..Dateien werden kopiert
cd /d %GEORDNET%
md %%a
XCOPY /S /C %%a %GEORDNET%
rd /s /q "%%a"
)
IF EXIST %ORDNEN%%%a\*.z* (
ECHO ^> ..Dateien zum Entpacken exisiteren
ECHO ^> ..Verzeichnis und Dateien werden kopiert
cd /d %GEORDNET%
XCOPY /S /C /Q %%a %GEORDNET%
rd /s /q "%%a"
ECHO ^> ..Altes Verzeichnis wurde geloescht
)
)
#DEL %BATCH_DIR%FOLDERS.TXT
ECHO Alle Operationen wurden ausgeführt. Es wurden %ANZAHL% Verzeichnisse verschoben.
ECHO Ihre Dateien befinden sich im Ornder: %GEORDNET%
PAUSE
Wenn also eine Datei mit der Endung .z* vorhanden ist, soll er den ordner MIT seienr kompletten Struktur in ein neues Verzeichnis kopieren.. also es soll dann so aussehen "C:\BATCH\geordnet\ordner_1\test\1.zip"
Mein script fuznt an dieser Stelle nicht,d a ich nicht weiß, wie ich der abt die Zieldatei angeben soll/kan, da ich in der FOLDERS:TXT Datei einträge mit dem laufwerskbuchstaben habe.
Ich habe mir gedacht, dass ich einfach das C:\BATCH\ lösche, sodass n ur der rest übrig bleibt.. aber auch das bekomme ich nicht hin
Wenn irh mir eine Lösung schreiben könntet, wäre das super entt. Ich würde mich rieseig freuen.. Es wäre auchs chön, wenn ihr mich auf etweilige Fehler aufmerksam machen könntet
ALso nochmals Danke
mfg
Hackse
[Edit Biber 18.8.2007]
Originaltitel "Ordner anch bestimtmen Dateien durchsuchen" redaktionell angepasst, Beitrag auf "gelöst" gesetzt und geschlossen.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 66411
Url: https://administrator.de/forum/ordner-nach-bestimmten-dateien-durchsuchen-66411.html
Ausgedruckt am: 15.05.2025 um 15:05 Uhr
4 Kommentare
Neuester Kommentar
Hier mal meinen Vorschlag, wenn ich deine Batch richtig verstanden habe, um das ganze etwas kleiner zu gestalten (ungetestet):
miniversum
@ECHO OFF
CLS
Setlocal
SET BATCH_DIR=C:\BATCH\
SET ORDNEN=C:\BATCH\ordnen\
SET GEORDNET=C:\BATCH\geordnet\
REM Erst alle rar
dir %ORDNEN%*.r* /S /A-D /ON /B>%BATCH_DIR%FOLDERS.TXT 2>nul
for /f "delims=" %%a IN (%BATCH_DIR%FOLDERS.TXT) DO call:domove "%%~dpa"
REM dann alle zip
dir %ORDNEN%*.z* /S /A-D /ON /B>%BATCH_DIR%FOLDERS.TXT 2>nul
for /f "delims=" %%a IN (%BATCH_DIR%FOLDERS.TXT) DO call:domove "%%~dpa"
goto:eof
:domove
set "quelle=%1"
set ziel=%quelle:ORDNEN=GEORDNET%
md %ziel%
xcopy "%quelle%*.*" "%ziel%" /c /s /e /r /v /d /y /i /h /f /o /x
rd /s /q "%quelle%"
miniversum