rotnasenkater
Goto Top

Batch-Frage (mal wieder.)

Servus, liebe Gemeinde!

Nachdem mir hier bereits mehrfach geholfen wurde und ich immer noch nicht allzuviel Ahnung von Batchprogrammierung habe, wende ich mich mal wieder mit meinem Problem hierher.

Ich habe mehrere Dateien in einem Ordner und möchte nun für jede Datei einen Unterordner mit dem Dateinamen erstellen und die Datei dann dorthin verschieben und umbenennen. Vielleicht mal zur Veranschaulichung:

VOHER

"Urlaub 23.08.09.mkv"
"Urlaub 21.09.11.mkv"
"Urlaub 25.10.12.mkv"

NACHHER
"Urlaub 23.08.09\Urlaubsvideo.mkv"
"Urlaub 21.09.11\Urlaubsvideo.mkv"
"Urlaub 25.10.12\Urlaubsvideo.mkv"

Ich habe schon einiges probiert, aber da ich keine Ahnung von Batchprogrammierung habe, kam ich nicht wirklich weiter. Es wäre klasse, wenn mir mal wieder geholfen werden würde.

Danke im voraus!!!

Content-ID: 368770

Url: https://administrator.de/forum/batch-frage-mal-wieder-368770.html

Ausgedruckt am: 22.01.2025 um 08:01 Uhr

rubberman
Lösung rubberman 21.03.2018 um 12:26:40 Uhr
Goto Top
Ungetestet:

@echo off &setlocal
for %%i in (*.mkv) do (
  md "%%~ni"  
  move "%%~i" "%%~ni\Urlaubsvideo.mkv"  
)

Steffen
Rotnasenkater
Rotnasenkater 21.03.2018 um 13:14:52 Uhr
Goto Top
Vielen Dank! Haut perfekt hin.

Aber vielleicht könntest Du mal erläutern, was "&setlocal" hier bewirkt - ich habe es probehalber mal weggelassen und die Batchdatei funktioniert trotzdem problemlos...
rubberman
rubberman 21.03.2018 um 17:54:16 Uhr
Goto Top
Das SETLOCAL öffnet eine Subumgebung, mit beschränkter Sichtbar- und Gültigkeit von neu definierten oder geänderten Variablenwerten. Ist eigentlich nur interessant, wenn du die Batchdatei (zum Beispiel zum Debuggen) aus einem CMD Fenster aufrufst oder aus anderen Batchdateien aufrufst, wo beim Verlassen des Scripts die Variablen nicht mehr definiert bzw. die im Script veränderte Variablenwerte wieder zurückgesetzt werden sollen.

In deinem Fall ist es wirklich völlig uninteressant, da in dem Dreizeiler nicht einmal Umgebungsvariablen definiert werden. Ist im Laufe der Zeit einfach bei mir zum Standard geworden ...

Steffen
Rotnasenkater
Rotnasenkater 02.04.2018 um 10:36:15 Uhr
Goto Top
Ah, danke für die Erkläuterung und für die vorherige Hilfe!