Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Fotos von SD Card automatisch auf Festplatte sortieren

Frage Entwicklung Batch & Shell

Mitglied: 103148

103148 (Level 1)

27.04.2014, aktualisiert 16:33 Uhr, 2957 Aufrufe, 16 Kommentare

Hallo,

ich möchte von meiner SD Karte die Fotos mit einer kleinen Batch automatisch sortieren.

Das Datum vom Foto soll in einem Ordner erstellt werden.

Spricht alle Fotos vom 27.04.2014 in einen Ordner 2014_04_27 und so weiter.

Idel ich geben den Ordner von wo die Fotos liegen und die Batch sortiert alles in den "Datumsordner"....?

BS Windows 7, gesucht von SD Karte oder halt vom Ordner den ich vorgebe zb d:\fotos



Mitglied: rubberman
27.04.2014, aktualisiert um 19:03 Uhr
Hallo angebissener-apfel,

sollte etwa so funktionieren:
01.
@echo off &setlocal 
02.
for /r "d:\fotos" %%i in (*.jpg) do ( 
03.
  for /f "tokens=1-3 delims=. " %%j in ("%%~ti") do ( 
04.
    2>nul md %%l_%%k_%%j 
05.
    copy "%%~i" "%%l_%%k_%%j\" 
06.
07.
)
Grüße
rubberman
Bitte warten ..
Mitglied: bastla
27.04.2014, aktualisiert um 20:05 Uhr
... oder kürzer mit
xcopy "%%i" "%%l_%%k_%%j\"
als Ersatz der Zeilen 4 und 5 - ggf kannst Du für das Ziel auch einen kompletten Pfad der Art
xcopy "%%i" "C:\Fotoarchiv\%%l_%%k_%%j\"
oder
xcopy "%%i" "%userprofile%\Pictures\%%l_%%k_%%j\"
vewenden ...

Grüße
bastla
Bitte warten ..
Mitglied: rubberman
27.04.2014 um 20:38 Uhr
Hallo bastla,

eigentlich eine gute Idee den Code zu verkürzen. Allerdings habe ich oben ganz bewusst auf XCOPY verzichtet. Durch den Aufruf eines externen Tools für jede Datei, dauert das Kopieren ca. fünfmal länger als die Kombination der beiden internen Befehle MD und COPY. Bei nur ein paar Bildern spielt das keine Rolle, bei ganzen Fotoarchiven könnte das anders aussehen. Ist aber Geschmackssache, da der Batchcode ebenso gut im Hintergrund laufen könnte, während man andere Dinge erledigt

Grüße
rubberman
Bitte warten ..
Mitglied: bastla
27.04.2014 um 23:11 Uhr
Hallo rubberman!

Wo Du Recht hast, hast Du Recht.

Bei kurzen Tests mit 908 im Durchschnitt etwa 1 MB großen Bildern brauchte auf meinem (nicht ganz taufrischen ) System die "xcopy"-Variante etwa 0,02 bis 0,03 Sekunden pro Bild länger - bei Tausenden von Bildern läppert sich das schon zu ein paar Minuten zusammen ...

Grüße
bastla
Bitte warten ..
Mitglied: 103148
29.04.2014, aktualisiert um 18:17 Uhr
ähm, noch ungetestet, werden die in Ordner kopiert mit dem erstelltem Datum.....????

kl edit ich würde gerne den Ordner angeben wo sie liegen und wo sie ihn müssten....
Bitte warten ..
Mitglied: bastla
29.04.2014 um 20:14 Uhr
Hallo angebissener-apfel!
werden die in Ordner kopiert mit dem erstelltem Datum.....????
War es nicht das, was Du wolltest? Konkret wird das Änderungsdatum der Datei verwendet, um den Zielordner festzulegen.
ich würde gerne den Ordner angeben wo sie liegen und wo sie ihn müssten....
Wie hast Du denn "d:\fotos" und "C:\Fotoarchiv" in den Batch-Ansätzen interpretiert?

Grüße
bastla
Bitte warten ..
Mitglied: 103148
02.05.2014, aktualisiert um 15:35 Uhr
so kann jetzt testen.....

die Batch blinkt kurz auf.... werden Unterordner durchsucht? Das wäre ne feine Sache!
Bitte warten ..
Mitglied: 103148
02.05.2014 um 15:35 Uhr
die Ordner sind alle leer.....

@echo off &setlocal
for /r "F:\DCIM\100CANON" %%i in (*.jpg) do (
for /f "tokens=1-3 delims=. " %%j in ("%%~ti") do (
2>nul md %%l_%%k_%%j
xcopy "%%i" "C:\Fotoarchiv\%%l_%%k_%%j\"
)
)
Bitte warten ..
Mitglied: bastla
02.05.2014, aktualisiert um 16:19 Uhr
Hallo angebissener-apfel!

Vorweg: Verwende bitte für das Posten von Code die passende Formatierung ...
Wenn Du in Zeile 1 echo off auf echo on änderst und am Ende eine Zeile
pause
hinzufügst, kannst Du sehen, was der Batch macht (oder auch nicht).
die Ordner sind alle leer.....
Wo suchst Du denn diese Ordner - dadurch, dass Du die beiden Batchansätze (md und copy vs nur xcopy) vermischt hast, werden vermutlich 2 Ordnerstrukturen erstellt; eine unterhalb des Ordners, in dem der Batch gespeichert ist, und eine unterhalb von "C:\Fotoarchiv" - in letzterer sollten sich die Bilder befinden.
werden Unterordner durchsucht?
Yep.

Grüße
bastla
Bitte warten ..
Mitglied: 103148
02.05.2014, aktualisiert um 17:06 Uhr
okay, also es wurde zusätzlich auch Ordner auf dem Desktop anleget, dort habe ich die Batch abgelegt.
Das hatte mich gewundert, aber es wurden alle Fotos auf c:\fotoarchive gespeichert, saubere Arbeit... ( bis auf die Ordner auf dem Desktop... )
Bitte warten ..
Mitglied: bastla
02.05.2014 um 18:54 Uhr
Hallo angebissener-apfel!
saubere Arbeit... ( bis auf die Ordner auf dem Desktop... )
Hinsichtlich
als Ersatz der Zeilen 4 und 5 - ggf kannst Du für das Ziel auch einen kompletten Pfad der Art
stellt sich die Frage, wem der unsaubere Teil der Arbeit anzulasten wäre ...

Grüße
bastla

P.S.: Saubere "Code"-Formatierung lässt sich auch im Nachhinein durchführen.
Bitte warten ..
Mitglied: 103148
06.05.2014 um 13:24 Uhr
okay, Fehler gesehen...

werde weiter testen.

Mal gefragt, kann man das Erstelldatum des Ordners vom den zu kopierenden Fotos anpassen?

Wenn die Batch ein zweites mal läuft, kann sie sich das merken, was sie schon durchsucht hat?

Beim xcopy möchte er überschreiben... ja, nein oder alle.
Bitte warten ..
Mitglied: rubberman
06.05.2014 um 22:08 Uhr
Hallo angebissener-apfel.

Mal gefragt, kann man das Erstelldatum des Ordners vom den zu kopierenden Fotos anpassen?
Was meinst du? Das Erstellungsdatum in den Eigenschaften des Ordners?

Wenn die Batch ein zweites mal läuft, kann sie sich das merken, was sie schon durchsucht hat?
Nein. Batchdateien leiden an chronischer Amnesie.

Beim xcopy möchte er überschreiben... ja, nein oder alle.
Und was möchtest du? Ja, nein oder alle?
Für Ja gibt es die Option /y, für Nein gäbe es das Workaround
echo n|xcopy ...
Grüße
rubberman
Bitte warten ..
Mitglied: bastla
06.05.2014 um 22:15 Uhr
... und dann gäbe es auch noch
xcopy /dy
Wenn die Batch ein zweites mal läuft, kann sie sich das merken, was sie schon durchsucht hat?
Wenn dem xcopy noch ein /m spendiert wird ...

Grüße
bastla
Bitte warten ..
Mitglied: 103148
28.06.2014 um 10:28 Uhr
Hallo...

ich habe noch mal getestet.... aber setze ich ein /m

also

xcopy "%%i" "C:\Fotoarchiv\%%l_%%k_%%j\" /m

erst kopiert er viele 0 Datein kopiert, sicher sich das die schon kopierten und dann fragt er wieder ob er überschreiben soll..... warum
Bitte warten ..
Mitglied: bastla
28.06.2014 um 11:45 Uhr
Hallo angebissener-apfel!
... fragt er wieder ob er überschreiben soll..... warum
Das "Warum" lässt sich ohne Informationen über Deine Dateien nicht beantworten - die Frage aber mit "/y" (bzw kombiniert "/my") verhindern ...

Grüße
bastla
Bitte warten ..
Ähnliche Inhalte
MikroTik RouterOS
gelöst Mikrotik externe SD Card funktioniert nicht (9)

Frage von sebasscha zum Thema MikroTik RouterOS ...

Speicherkarten
Zusätzlicher Speicherplatz mit SD oder Stick? (10)

Frage von traller zum Thema Speicherkarten ...

Apple
Fotos auf iPhone verschieben (3)

Frage von Snowboarder1994 zum Thema Apple ...

Multimedia
gelöst Mediendatenbank (Fotos, Videos) mit Verschlagwortung (2)

Frage von MrCount zum Thema Multimedia ...

Neue Wissensbeiträge
Humor (lol)

Taschenrechner in IOS kaputt!

(5)

Information von Lochkartenstanzer zum Thema Humor (lol) ...

Sicherheit

Kanadischer Geheimdienst veröffentlicht erstmals Sicherheitssoftware

(3)

Information von BassFishFox zum Thema Sicherheit ...

Virtualisierung

Docker Monitoring und Steuerung per "sen"

Tipp von Frank zum Thema Virtualisierung ...

Heiß diskutierte Inhalte
Windows 7
Abbruch bei Brennvorgang (19)

Frage von Simulant zum Thema Windows 7 ...

Router & Routing
Externe IP von innen erreichbar machen (16)

Frage von Windows10Gegner zum Thema Router & Routing ...

Firewall
WIndows 7 RDP Massen Angriff (14)

Frage von Motte990 zum Thema Firewall ...