Dateien in bestimmte Unterordner verschieben Gescannte Dokumente auf Unterordner verteilen
#1
geschrieben 21. April 2017 - 09:28
ich habe einen Ordner mit vielen gescannten Dateien, der Ordner heisst Q:\Historische Aufnahmen. Die Dateien (im Moment jpg), haben eine 4-stellige Zahl und dahinter verschieden Ergänzungsbezeichnungen, also z.B. 0001 Historische Aufnahme vor Zerstörung, 0045 Historische Aufnahme ...
Die Dateien sollen in ein Verzeichnis "Q:\galerie\xxxx\Historische Aufnahmen" verschoben werden, wobei xxxx den Zahlen im Dateinamen entspricht.
Ist vielleicht ganz simpel, ich komme aber nicht drauf. Lösung sollte als batch-Datei sein.
Vielen Dank schon mal im Voraus
Anzeige
#2 _d4rkn3ss4ev3r_
geschrieben 22. April 2017 - 08:36
@echo off set pfad1=Q:\galerie set pfad2=Historische Aufnahmen cd /d "%~dp0" for %%a in ("*.jpg") do set datei=%%a&call :loop echo.&echo Fertig&echo.&pause :loop echo %datei% wird bearbeitet set zahl=%datei:~0,4% if not exist "%pfad1%\%zahl%\%pfad2%" md "%pfad1%\%zahl%\%pfad2%" if errorlevel 1 echo Error beim erstellen von "%pfad1%\%zahl%\%pfad2%" move "%datei%" "%pfad1%\%zahl%\%pfad2%" if errorlevel 1 echo Error beim verschieben von "%datei%" goto :eof
Das Script in Q:\Historische Aufnahmen starten.
#3
geschrieben 22. April 2017 - 09:06
vielen Dank für das Script, funktioniert unter den gegebenen Bedingungen einwandfrei. Ich habe aber schon etwas weiter gedacht, JHabe auch pdf-Dateien, die in einen Unterordner pläne/PDF-Dokumente verschoben werden sollen. Also habe ich in den beiden ersten Zeilen die entsprechenden Ordner eingetragen und das jpg durch pdf ersetzt. Funktioniert auch, aber er erkennt das "ä" bei Pläne wohl nicht und legt eine Ordnerstruktur mit "plöne" an. Hast Du da noch eine Lösung. So schnell, wie Du mein eigentliches Problem gelöst hast, bin ich mir da sicher.
Viele GRüße
jowa1961
#4
geschrieben 22. April 2017 - 09:23
#5
geschrieben 22. April 2017 - 12:45
prinzipiell hast Du natürlich Recht, allerdings ist der Ordner "Pläne" vorgegeben. Auf die Dateien greift ein anderes Programm zu. Es handelt sich hierbei um ein Verwaltungsprogramm für Immobilien. Die Ordnerstruktur ist fest vorgegebe. Die Dateinamen kann ich natürlich künftig so vergeben,wie Du das gemeint hast, da bin ich völlig frei, wichtig sind hier nur die ersten vier Ziffern, der REst ist egal.
Viele Grüße und Danke
jowa1961
#6 _d4rkn3ss4ev3r_
geschrieben 22. April 2017 - 14:29
@echo off chcp 1252>nul set pfad1=Q:\galerie set pfad2=Historische Aufnahmen cd /d "%~dp0" for %%a in ("*.jpg") do set datei=%%a&call :loop echo.&echo Fertig&echo.&pause&exit :loop echo %datei% wird bearbeitet set zahl=%datei:~0,4% if not exist "%pfad1%\%zahl%\%pfad2%" md "%pfad1%\%zahl%\%pfad2%" if errorlevel 1 echo Error beim erstellen von "%pfad1%\%zahl%\%pfad2%" move "%datei%" "%pfad1%\%zahl%\%pfad2%" if errorlevel 1 echo Error beim verschieben von "%datei%" goto :eof
Dieser Beitrag wurde von d4rkn3ss4ev3r bearbeitet: 22. April 2017 - 15:52
#7
geschrieben 22. April 2017 - 15:31
klappt perfekt mit dem Zusatz, vielen Dank. Echt Super Leistung
Gruß und schönes Wochenende
jowa1961
#8 _d4rkn3ss4ev3r_
geschrieben 22. April 2017 - 15:52
Ich hab noch ein exit nach der Pause Funktion rangehängt. Sonst würde sich das Script nicht beenden
#9
geschrieben 24. April 2017 - 12:23
habe die Datei im Büro angewendet, es hat alles super funktioniert, auch nach Anpassung einiger Parameter für andere Dateien und Verzeichnisse. Aber was macht man, wenn alles funktioniert? Genau, man sucht sich größere Probleme:-)
Wir haben eine Ordnerstruktur, die folgendermaßen aussieht (nur Ausschnitt)
Q:\galerie\xxxx\wohnung\xxxx.yyyy\expose (xxxx ist eine vierstellige Gebäudenummer, z.B. 0001 - yyyy ist eine vierstellige Wohnungsnummer, z.B. 0001 oder 0002) Die Wohnung wird also mit xxxx.yyyy bezeichnet, für jede Wohnung gibt es unter Q:\galerie\xxxx\wohnung also einen eigenen Unterordner mit jeweils wieder einem Unterordner expose.
Nun gibt es ein Verzeichnis im Hauptlaufwerk (Q:) ein Verzeichnis, das "Hauptbilder" heißt und verscchieden Bild-Dateien enthält. Diese haben die Bezeichnung "xxxx Bild", also z.B. "0001 Bild" für das Gebäude 0001.
Dieses Bild soll nun in jeder Wohnung des Gebäudes ins Unterverzeichnis "expose" kopiert und dort umbenannt werden in "exp_hauptbild". Ein externes Verwaltungsprogramm greift auf dieses Bild zu, wenn ein Expose für eine Wohnung erstellt werden soll.
Die Batch-Datei soll also hergehen und ein Bild im Verzeichnis "Q:\Hauptbilder" nehmen, in den Ordner Q:\galerie\xxxx\wohnung gehen und dort alle Unterordner durchlaufen (unterschiedlich viele) und das Bild jeweils in den Unterordner Q:\galerie\xxxx\wohnung\xxxx.yyyy\expose kopieren und umbenennen. Wenn es mit einem Gebäude fertig ist, soll es wieder ins VErzeichnis "Q:\Hauptbilder" gehen und das nächste Bild nehmen, bis keine mehr übrig sind.
Die Batch-Datei hierfür sollte im Verzeichnis "Q:\Hauptbilder" liegen.
Ich habe schon versucht, das Problem mit der Umwandlung Deines Scriptes zu lösen, komme aber nicht so rrecht weiter.
Vielen lieben Dank im Voraus
jowa1961
#10
geschrieben 13. Mai 2017 - 15:36
- ← Bluescreen von virtuellem XP unter WIN10 mit VirtualBox
- Sonstige Software
- Dateien verschieben und umbenennen →