Dateien mit bestimmten Dateinamenbestandteil in vorhandenen Ordner kopieren
Hallo,
ich habe mich jetzt schon durch viele Forenbeiträge durchgearbeitet, konnte mein Problem aber noch nicht so recht lösen.
Und zwar habe ich in einem Ordner mehrere Unterordner in denen sich mehrere Dateien befinden. Unter diesen Dateien ist eine die mit dem Erstellungsdatum im Namen beginnt. Diese Datei möchte ich gerne in einen anderen Ordner kopieren. Dazu habe ich mir folgendes zusammen gesucht:
Leider bekomme ich im Fenster immer nur angezeigt, dass er die Datei nicht finden konnte. Allerdings scheint er den Dateinamen auch nur bis zum ersten Leerzeichen zu übernehmen.
Dann kommt da noch eine zweite Schwierigkeit dazu:
Und zwar befindet sich in dem Ordner eine zweite Datei, die identisch beginnt, aber immer die Buchstaben "UNB" beinhaltet. Diese Datei soll nicht mitkopiert werden.
Ich hoffe, ihr könnt mir hierbei helfen, unsere Sekretärin wird langsam grantig ;)
Vielen Dank!
ich habe mich jetzt schon durch viele Forenbeiträge durchgearbeitet, konnte mein Problem aber noch nicht so recht lösen.
Und zwar habe ich in einem Ordner mehrere Unterordner in denen sich mehrere Dateien befinden. Unter diesen Dateien ist eine die mit dem Erstellungsdatum im Namen beginnt. Diese Datei möchte ich gerne in einen anderen Ordner kopieren. Dazu habe ich mir folgendes zusammen gesucht:
@echo off && title %~n0 && color 70
setlocal
rem Bitte Quellordner anpassen!
set Quellordner="M:\SOFTWARE\VERTEILER\"
echo. && echo Kopiere alle Dateien um . . . && echo.
rem analog der Site:
rem [content:160376]
for /f "delims=" %%i in ('dir /b %Quellordner%*.pdf^|findstr /b "[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]"') do call :Uprg %%i
echo.
pause
goto :Ende
:Uprg
set Dateiname="%~1"
set ZielOrdner="M:\SOFTWARE\UploadsHomepage"
echo Kopiere %Dateiname% nach %ZielOrdner%
copy %Quellordner%%Dateiname% %Quellordner%%Dateiname:~0,4%
:Ende
Endlocal
Leider bekomme ich im Fenster immer nur angezeigt, dass er die Datei nicht finden konnte. Allerdings scheint er den Dateinamen auch nur bis zum ersten Leerzeichen zu übernehmen.
Dann kommt da noch eine zweite Schwierigkeit dazu:
Und zwar befindet sich in dem Ordner eine zweite Datei, die identisch beginnt, aber immer die Buchstaben "UNB" beinhaltet. Diese Datei soll nicht mitkopiert werden.
Ich hoffe, ihr könnt mir hierbei helfen, unsere Sekretärin wird langsam grantig ;)
Vielen Dank!
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 373775
Url: https://administrator.de/forum/dateien-mit-bestimmten-dateinamenbestandteil-in-vorhandenen-ordner-kopieren-373775.html
Ausgedruckt am: 28.04.2025 um 06:04 Uhr
5 Kommentare
Neuester Kommentar

@echo off && title %~n0 && color 70
setlocal
rem Bitte Quellordner und Zielordner anpassen!
set "Quellordner=M:\SOFTWARE\VERTEILER"
set "ZielOrdner=M:\SOFTWARE\UploadsHomepage"
echo Kopiere alle Dateien um . . .
for /f "delims=" %%a in ('dir /b /s /a-d "%Quellordner%\*.pdf" ^|findstr /b "[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]" ^| findstr /iv "UNB" 2^>nul') do copy "%%a" "%Zielordner%"
pause

Doch geht, getestet.
Starte ich die Datei als Administrator wird mir angezeigt dass das System die Datei nicht finden kann... . Dateipfade der Ordner stimmen aber (habe ich mir ebenfalls ausgeben lassen).
"Richtig" kopieren dann geht das auch.
Zitat von @scaary:
Kann das Problem da liegen, dass es sich bei Quell- und Ziellaufwerk um ein Netzwerklaufwerk handelt?
Das wäre ein Problem wenn du deine Cmd elevated in anderem Benutzerkontext startest oder die UAC aus ist. Denn Netzlaufwerke sind Sessionabhängig gemappt!Kann das Problem da liegen, dass es sich bei Quell- und Ziellaufwerk um ein Netzwerklaufwerk handelt?
Also entweder UNC Pfade verwenden die Cmd im Userkontext laufen lassen oder den EnableLinkedConnections Registry Key setzen.