nahler
Goto Top

Bilder anhand des Dateinamens auf Unterordner verteilen

Hallo zusammen,

ich habe hier mal eine kleine Aufgabe, die sicherlich für die ganzen Profis hier im Schlaf gelöst werden kann, mich - als absoluten Script-Anfänger - aber zur Verzweiflung bring:

Ich habe einen Ordner mit diversen Bildern (im Regelfall durchnummeriert). Also z.B.

  • BILDER
    • Bild_001.jpg
    • Bild_002.jpg
    • Bild_003.jpg
    • ...

Nun benötige ich eine Unterordnerstruktur, in der jeweils ein neuer Unterordner pro Bild angelegt wird. Der Unterordner trägt dabei den Namen des Bildes in UPPERCASE und enthält genau das entsprechende Bild. Also in diesem Beispiel:

  • BILDER
    • BILD_001
      • Bild_001.jpg
    • BILD_002
      • Bild_002.jpg
    • BILD_003
      • Bild_003.jpg
    • ...


    Es wäre super, wenn ihr mir dabei ein wenig auf die Sprünge helfen könntet.

    Grüße
    Marcel

Content-Key: 140518

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

Printed on: April 19, 2024 at 05:04 o'clock

Member: bastla
bastla Apr 13, 2010 at 14:56:37 (UTC)
Goto Top
Hallo nahler und willkommen im Forum!

Könnte etwa so gehen:
@echo off & setlocal
set "Basis=D:\Bilder"  

set U=%temp%\Upper.vbs
>%U% echo WScript.Echo UCase(WScript.Arguments(0))

for %%i in ("%Basis%\*.jpg") do call :ProcessPic "%%i"  
goto :eof

:ProcessPic
for /f "delims=" %%a in ('cscript //nologo %U% "%~n1"') do set "Ordner=%Basis%\%%a"  
md "%Ordner%" && move %1 "%Ordner%"  
goto :eof
Grüße
bastla
Member: nahler
nahler Apr 13, 2010 at 16:09:09 (UTC)
Goto Top
Grandios!!! Genau Das habe ich benötigt. Vielen Dank für die schnelle Hilfe.