gurkenhobel
Goto Top

Dateien nach Namen in den gleichnamigen Ordner verschieben

Bisher habe ich mit einer simplen Batchdatei meine Galeriebilder sortiert, d.h. in entsprechende Ordner verschoben:
MD 4193
MD 4072
MD 4184
MOVE /Y 4193*.jpg 4193
MOVE /Y 4072*.jpg 4072
MOVE /Y 4184*.jpg 4184
Dabei musste ich aber jedesmal den Ordner durchscrollen und mir die ersten vier Buchstaben der Dateinamen in eine Batch-Datei schreiben. Bei über 1.000 Dateien täglich eine etwas mühevolle Arbeit.

Gibt es keine Möglichkeit, dies mit einem Batchprogramm oder VBS zu erledigen?

Für eine Lösung wäre ich sehr dankbar, GH

Content-Key: 7859034859

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

Printed on: April 27, 2024 at 15:04 o'clock

Mitglied: 7426148943
Solution 7426148943 Jul 15, 2023 updated at 09:49:30 (UTC)
Goto Top
Zur Netiquette hat's wohl auch wieder nicht gereicht ... 😐
Suchfunktion wieder kaputt? Findest du hier hunderte Einträge zum Thema
Batch
@echo off &setlocal enabledelayedexpansion
set "quelle=d:\ordner"  
for %%a in ("%quelle%\*.jpg") do (  
    set "name=%%~na"  
    set "prefix=!name:~0,4!"  
    if not exist "%quelle%\!prefix!" md "%quelle%\!prefix!" >nul  
    move "%%a" "%quelle%\!prefix!\"  
)
PowerShell
$quelle = "d:\ordner"  
Get-ChildItem $quelle -File -Filter *.jpg | move-item -Destination {(md "$quelle\$($_.Name.Substring(0,4))" -Force).Fullname} -verbose  
Zeppel
Member: Gurkenhobel
Solution Gurkenhobel Jul 15, 2023 at 10:04:48 (UTC)
Goto Top
Hallo,
danke für Deine prompte Hilfe. Habe das Batch etwas spezifiziert, damit ich es immer aus dem aktuellen Ordner starten kann:
@echo off &setlocal enabledelayedexpansion

for %%a in (".\*.jpg") do (    
    set "name=%%~na"    
    set "prefix=!name:~0,4!"    
    if not exist ".\!prefix!" md "%quelle%\!prefix!" >nul    
    move "%%a" ".\!prefix!\"    
)

Vielen Dank und ein schönes Wochende
Gurkenhobel
Member: TwistedAir
TwistedAir Jul 15, 2023 at 21:29:46 (UTC)
Goto Top
Moin,

kleiner Hinweis: in Zeile 6 verwendest du in deiner angepassten Batch die Variable %quelle%, die aber bis dahin nicht definiert wurde. Solltest du noch korrigieren. face-wink

Gruß
TA
Member: Gurkenhobel
Solution Gurkenhobel Jul 16, 2023 at 08:43:17 (UTC)
Goto Top
Zitat von @TwistedAir:

Moin,

kleiner Hinweis: in Zeile 6 verwendest du in deiner angepassten Batch die Variable %quelle%, die aber bis dahin nicht definiert wurde. Solltest du noch korrigieren. face-wink

Gruß
TA

Hallo, danke für den Hinweis, die "zweite Quelle" habe ich glattweg übersehen.
Einen schönen Sontag noch, GH