Batchdatei erstellen file 2 folder für win 7
Hallo an die Experten hier
Hallo an die Experten hier,
kann mir evtl jemand helfen ich versuche verzweifelt einen batch zu schreiben
um mir das erstellen von verzeichnissen und verschieben der Dateien zu ersparen.
habe sehr viele Bilder die kunterbunt in verzeichnissen liegen haben zwar alle einen
namen habe hier aber nie verzeichnisse angelegt. so wei so gut.
die Dateien sehen ungefär vom namen so aus. 1234567 1234567-bliblablub-blablab-bla-bla.jpg
die xxxxx ist das wo raus sich nachher das verzeichniss erstellen soll der rest ist egal
das soll heisen diese batch soll in dem verzeichniss der bilder ausgeführt werden dann
alle bildernamen zu verzeichnissen wandeln und dann da rein kopiert werden, beispiel
10000 bilder mit teilweisen gleichem anfang vobei die länge zum ersten trennzeichen
verschieden ist.
alter hase-123-fght-dsjurr.jpg
alter hase-123-fght-dsju.jpg
erstellter ordner (alter hase) und da sollen sich die dateien auch rein Kopieren
grünbaum berg-123-fght-dsj.jpg
grünbaum berg-23-fght-dsjurr.jpg
(grünbaum berg)
neuer hase-13-fght-dsjurr.jpg
neuer hase-13-fght-urr.jpg
(neuer hase)
gelbes Autodach-123-fg-dsjurr.jpg
gelbes Autodach-fght-dsjurr.jpg
(gelbes Autodach)
Autobahn-3-fgt-dsjurr.jpg
(Autobahn)
Fenster-1-fght-dr.jpg
(Fenster)
USW das soll zeigen das das was vor dem ersten - steht soll der Verzeichnissname werden und alle
Dateien die bis zum ersten - gleich sind auch dann da drinn stehen.
ich hoffe mann versteht wie ich das meine
folgendes habe ich mir schon zusammen gebastelt was auch zum teil funktioniert
aber ich kriege nicht hin das er die verzeichnisse so benennt wie vor dem ersten -
könnt Ihr mir da etwas unter die Arme greifen ????
@echo off & setlocal
set "Basis=D:\Das Verzeichnis"
pushd "%Basis%"
For /F "Tokens=1 Delims=*" %%i IN ('Dir /B /A-D') do Call :ProcessFile "%%~i"
popd
goto :eof
:ProcessFile
set "Datei=%~1"
set "Verz=%Datei:~,18%" (Das habe ich gemacht das er einen teil zum VZ anlegt und die gleichen da hinein Copiert)
if not exist "%Verz%" md "%Verz%"
copy "%Datei%" "%Verz%"
goto :eof
hoffe bald auf Antwort bin am Verzweifeln
gruß Saschi
kann mir evtl jemand helfen ich versuche verzweifelt einen batch zu schreiben
um mir das erstellen von verzeichnissen und verschieben der Dateien zu ersparen.
habe sehr viele Bilder die kunterbunt in verzeichnissen liegen haben zwar alle einen
namen habe hier aber nie verzeichnisse angelegt. so wei so gut.
die Dateien sehen ungefär vom namen so aus. 1234567 1234567-bliblablub-blablab-bla-bla.jpg
die xxxxx ist das wo raus sich nachher das verzeichniss erstellen soll der rest ist egal
das soll heisen diese batch soll in dem verzeichniss der bilder ausgeführt werden dann
alle bildernamen zu verzeichnissen wandeln und dann da rein kopiert werden, beispiel
10000 bilder mit teilweisen gleichem anfang vobei die länge zum ersten trennzeichen
verschieden ist.
alter hase-123-fght-dsjurr.jpg
alter hase-123-fght-dsju.jpg
erstellter ordner (alter hase) und da sollen sich die dateien auch rein Kopieren
grünbaum berg-123-fght-dsj.jpg
grünbaum berg-23-fght-dsjurr.jpg
(grünbaum berg)
neuer hase-13-fght-dsjurr.jpg
neuer hase-13-fght-urr.jpg
(neuer hase)
gelbes Autodach-123-fg-dsjurr.jpg
gelbes Autodach-fght-dsjurr.jpg
(gelbes Autodach)
Autobahn-3-fgt-dsjurr.jpg
(Autobahn)
Fenster-1-fght-dr.jpg
(Fenster)
USW das soll zeigen das das was vor dem ersten - steht soll der Verzeichnissname werden und alle
Dateien die bis zum ersten - gleich sind auch dann da drinn stehen.
ich hoffe mann versteht wie ich das meine
folgendes habe ich mir schon zusammen gebastelt was auch zum teil funktioniert
aber ich kriege nicht hin das er die verzeichnisse so benennt wie vor dem ersten -
könnt Ihr mir da etwas unter die Arme greifen ????
@echo off & setlocal
set "Basis=D:\Das Verzeichnis"
pushd "%Basis%"
For /F "Tokens=1 Delims=*" %%i IN ('Dir /B /A-D') do Call :ProcessFile "%%~i"
popd
goto :eof
:ProcessFile
set "Datei=%~1"
set "Verz=%Datei:~,18%" (Das habe ich gemacht das er einen teil zum VZ anlegt und die gleichen da hinein Copiert)
if not exist "%Verz%" md "%Verz%"
copy "%Datei%" "%Verz%"
goto :eof
hoffe bald auf Antwort bin am Verzweifeln
gruß Saschi
Please also mark the comments that contributed to the solution of the article
Content-Key: 187644
Url: https://administrator.de/contentid/187644
Printed on: April 16, 2024 at 06:04 o'clock
2 Comments
Latest comment