pirat-ohne-bart
Goto Top

Dateien nach der zweiten Stelle im Dateinamen in Ordner verschieben

Hallo liebe Administratoren,

ich stehe vor folgender Problemstellung:

Ich benötige eine Batch-Datei, die Dateien aus einem bestimmten Ordner nach der zweiten Stelle in ihrem Dateinamen in entsprechende Ordner sortiert.

Also zum Beispiel:
In C:\Unsortiert liegen die Dateien
X1234.pdf
X1342.pdf
X2234.pdf
X2676.pdf
X3234.pdf
X3544.pdf


Es existieren bereits die Ordner
C:\1
C:\2
C:\3

In diese Ordner soll die Batch-Datei nun die entsprechenden Dateien je nach dem, welches die zweite Stelle des Dateinamens ist, einsortieren.

Könnt ihr mir vielleicht dabei helfen? Ich habe bereits diverse Konstruktionen mit dem MOVE-Befehl ausprobiert und bin nicht weiter gekommen, und Google kann mir für genau dieses spezifische Problem kein Lösung bieten (ich möchte aber nicht ausschließen, dass ich zu blöd zum Suchen bin...)

Vielen Dank sage ich schonmal im Voraus für all eure Bemühungen!

Liebe Grüße
der Pirat

Content-Key: 391130

Url: https://administrator.de/contentid/391130

Printed on: May 4, 2024 at 02:05 o'clock

Mitglied: 137443
Solution 137443 Oct 31, 2018 updated at 09:34:59 (UTC)
Goto Top
Hi pirat-ohne-bart.
@echo off &setlocal enabledelayedexpansion
set "source=c:\unsortiert"  
set "destination=c:\sortiert"  
For %%a in ("%source%\*.PDF") do (  
    Set "name=%%~nxa"  
    Set "folder=!name:~1,1!"  
    If not exist "%destination%\!folder!" md "%destination%\!folder!" >nul 2>&1  
    move "%%a" "%destination%\!folder!\"  
)
Gruß l.
Member: pirat-ohne-bart
pirat-ohne-bart Nov 01, 2018 at 18:46:24 (UTC)
Goto Top
Allerbesten Dank, klappt wunderbar!!