reinhr

Nur Dateien mit gleichen Dateianfang verschieben

Hallo Leute,

ich bekomme täglich viele verschiedene Dateien mit gleicher Struktur in einem Verzeichnis bereitgestellt.
Derzeit werden alle Dateien nach einer Prüfung ob diese > 0KB sind verschoben.
Das fünktioniert auch sehr gut. (BAT-Datei: Code anbei) (INI-Datei: Code anbei)

In meinem Verzeichnis sind z.B folgende Dateien.
01CA00046.txt
01CA00047.txt
02CA00033.txt
02CA00034.txt

Ich möchte erreichen, dass z.B nur die Dateien mit dem Dateiprefix 01CA verarbeitet werden.
Mit %%i wird immer der ganze Dateiname als Variable aufgenommen.
Wie kann ich das anstellen?

---------------------------------------------------------------------------------------------------
BAT-Datei
---------------------------------------------------------------------------------------------------
SET ININAME=%~n0.ini
for /f "tokens=2 delims==" %%i in ('findstr "MyZIEL=" %ININAME%') do SET MyZIEL=%%i  
for /f "tokens=2 delims==" %%i in ('findstr "MyQUEL=" %ININAME%') do SET MyQUEL=%%i  


set /a ThisLoop=0
:waitForTheFilesToCreate
if %Thisloop%==10 goto givingUp
set /a Thisloop=%Thisloop% +1
for /f "delims=" %%i in ('dir %MyQUEL% /b /a-d /s') do if %%~zi gtr 0 move "%%i" %MyZIEL%  
if exist "%MyQUEL%" dir /b /A:-d "%MyQUEL%">nul 2>nul || goto machweiter  
goto waitForTheFilesToCreate

:givingUp
echo Timeout am %date% %time%, da 0kB Dateien vorhanden (Siehe Stammverzeichnis) >> Error.log
for /f "delims=" %%i in ('dir %MyQUEL% /b /a-d /s') do if %%i gtr 1024 move "%%i"  
goto machweiter
goto :eof

:machWeiter
for /f "tokens=2 delims==" %%i in ('findstr "MySTAR=" %ININAME%') do %%i  
----------------------------------------------------------------------------------------------------

----------------------------------------------------------------------------------------------------
INI-Datei
----------------------------------------------------------------------------------------------------
MyQUEL=C:\TMP
MyZIEL=C:\LIVE
MySTAR=\\nvgm028.muc\....\CaPaX\Test.bat
----------------------------------------------------------------------------------------------------

Gruß
Roland
Auf Facebook teilen
Auf X (Twitter) teilen
Auf Reddit teilen
Auf Linkedin teilen

Content-ID: 88416

Url: https://administrator.de/forum/nur-dateien-mit-gleichen-dateianfang-verschieben-88416.html

Ausgedruckt am: 18.05.2025 um 16:05 Uhr

Biber
Biber 26.05.2008 um 01:02:42 Uhr
Goto Top
Moin Roland,
setze die Variable MyQUEL auf "C:\Tmp\01CA*.*" statt auf "C:\tmp".

Grüße
Biber
reinhr
reinhr 02.06.2008 um 19:37:27 Uhr
Goto Top
Einwandfrei Biber, genau das wars!!

Danke und Gruß

Roland