Top-Themen

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
Kommentar vom Moderator Biber am 03.12.2009 um 18:12:14 Uhr
Moin Traveller,

willkommen im Forum.
Danke für die vorbildlich saubere Frageformulierung/Problembeschreibung.

Grüße Biber

gelöst Datum aus Datei auslesen, Ordner nach Dateidatum erstellen und Datei dorthin kopieren oder verschieben

Mitglied: Traveller

Traveller (Level 1) - Jetzt verbinden

03.12.2009, aktualisiert 18:12 Uhr, 12400 Aufrufe, 11 Kommentare, 1 Danke

Hallo!

Jeder kennt das Problem, dass man viele Bilder mit der Digitalkamera gemacht hat und die Bilder nun systematisch geordnet haben möchte.

Nun gibt es fast zu jeder Kamera eine entsprechende Software. Aber diese wiil nicht jeder installieren, weil sie meist eine abgespeckte Version enthält.

Ich möchte erreichen, dass ein Script das Erstellungsdatum einer Datei ausliest und die Datei dann in einen Ordner mit der Formatierung
yyyy_mm_dd (z.B. 2009_12_03) kopiert oder verschiebt. Sollte der Ordner noch nicht existieren, dann soll er angelegt werden.

Mit der erwähnten Kamerasoftware ist dies meist möglich. Aber nur deswegen die Software installieren, deren Rest ich nicht benötige?

Aber vielleicht kann mir jemand aus dem Forum helfen.

Vielen Dank!
Mitglied: Snowman25
03.12.2009 um 12:26 Uhr
01.
@Echo off
02.
set file=%1
03.
set fdate=%~t1
04.
set fday=%fdate:~0,2%
05.
set fmonth=%fdate:~3,2%
06.
set fyear=%fdate:~6,4%
07.
set folname=%fyear%_%fmonth%_%fday%
08.
:work
09.
if exist %folname%\NUL (
10.
	Echo Verschiebe Datei %file% nach %folname%
11.
	move %file% "%folname%\"%file%
12.
) else (
13.
	Echo Erstelle Verzeichnis %folname%
14.
	md "%folname%"
15.
	goto work
16.
)
Aus dem ordner ausführen, in dem die Bilder liegen
verschiebt eine Datei in einen ordner der nach dem letzten Änderungszeitpunkt benannt ist
Bitte warten ..
Mitglied: Traveller
03.12.2009 um 12:51 Uhr
Vielen Dank für den ersten Lösungsansatz.

Aber es klappt nicht.
Ich ahbe eine Datei namens kopieren.bat erstellt und in den Ordner mit den betreffenden Bildern kopiert.
Inhalt der kopieren.bat ist dieser Code:
@Echo off
set file=%1
set fdate=%~t1
set fday=%fdate:~0,2%
set fmonth=%fdate:~3,2%
set fyear=%fdate:~6,4%
set folname=%fyear%_%fmonth%_%fday%
:work
if exist %folname%\NUL (
Echo Verschiebe Datei %file% nach %folname%
move %file% "%folname%\"%file%
) else (
Echo Erstelle Verzeichnis %folname%
md "%folname%"
goto work
)

Führe ich nun die Batch datei aus, dann geht sie endlos und ich kann nur mit strg+c abbrechen.
Dann lese ich im DOS-Fenster.
Erstelle Verzeichnis ~6,4_~3,2_~0,2
A subdirectory or file ~6,4_~3,2_~0,2 already exists.
Verschiebe Datei nach ~6,4_~3,2_~0,2
The system cannot find this file specified

Und dann rennt es wieder von neuem los, immer in dieser Folge.

Das Verzeichnis
~6,4_~3,2_~0,2
wurde erstellt. In diesem befindet sich aber keine Datei.

Gut, vielleicht ist das noch nicht der richtige Ansatz?
Bitte warten ..
Mitglied: Snowman25
03.12.2009 um 12:58 Uhr
huch.. beim letzten Edit ist ein Satz flöten gegangen... du musst als aufrufparameter eine Datei angeben, die wird dann in den entsprechenden verschoben.
kopieren ist übrigens der falsche name... der bilder werden bloß verschoben
wenn du kurz warten kannst, kann ich dir auch 'n script anbieten, dass einen kompletten ordner durchkämmt
Bitte warten ..
Mitglied: Traveller
03.12.2009 um 13:04 Uhr
klar warte ich gerne!

Es ist ja so, dass ich die Bilder von der Flashkarte auf den Blechtrottel kopiere und dann sollen sie eben in die Struktur gebracht werden.
Wenn es dann geklappt hat, kann ich sie ja löschen.

Danke für deine tolle Hilfe!
Bitte warten ..
Mitglied: Snowman25
03.12.2009 um 13:23 Uhr
du kannst sie genausogut erst von der Karte auf den PC schieben, einfach in i-ein verzeichnis, da steckst du dann die kopieren.bat dazu und schon hast du deine ordnung. hier jetzt die beiden dateien:
builder.bat:
01.
@Echo off
02.
for %%a in (*) do (
03.
	if NOT "%%a"=="builder.bat" (
04.
		if NOT "%%a"=="worker.bat" (
05.
			Echo.
06.
			Echo Verarbeite Datei %%a
07.
			Echo.
08.
			Echo ________________________________
09.
			Echo.
10.
			call worker.bat "%%a"
11.
		)
12.
	)
13.
)
worker.bat:
01.
@Echo off
02.
set file=%1
03.
set fdate=%~t1
04.
set fday=%fdate:~0,2%
05.
set fmonth=%fdate:~3,2%
06.
set fyear=%fdate:~6,4%
07.
set folname=%fyear%_%fmonth%_%fday%
08.
:work
09.
if exist %folname%\NUL (
10.
	Echo Verschiebe Datei %file% nach %folname%
11.
	Echo ----
12.
	move %file% "%folname%\"%file% 
13.
) else (
14.
	Echo Erstelle Verzeichnis %folname%
15.
	Echo ----
16.
	md "%folname%"
17.
	goto work
18.
)
Updated Version, kopiert sich nicht selbst
Bitte warten ..
Mitglied: Traveller
03.12.2009 um 13:39 Uhr
Wow!

Cooles Teil!!!

Über 500 Bilder sind eben in ein paaur Sekunden richtig einsortiert worden!
Klasse!!!

Vielen Dank und noch eine schöne Adventszeit!
Bitte warten ..
Mitglied: Snowman25
03.12.2009 um 14:00 Uhr
Kein Problem, danke und dir auch
Heb dir die Dateien auf, willst ja wahrscheinlich öfter bilder sortieren
Bitte warten ..
Mitglied: Traveller
29.04.2012 um 19:50 Uhr
Übrigens:
ich nutze diese beiden Teile immer noch.

Also nochmals vielen Dank!!
Bitte warten ..
Mitglied: 107785
31.07.2012 um 23:01 Uhr
Zitat von Snowman25:
du kannst sie genausogut erst von der Karte auf den PC schieben, einfach in i-ein verzeichnis, da steckst du dann die kopieren.bat
dazu und schon hast du deine ordnung. hier jetzt die beiden dateien:
builder.bat:
01.
> @Echo off
02.
> for %%a in (*) do (
03.
> 	if NOT "%%a"=="builder.bat" (
04.
> 		if NOT "%%a"=="worker.bat" (
05.
> 			Echo.
06.
> 			Echo Verarbeite Datei %%a
07.
> 			Echo.
08.
> 			Echo ________________________________
09.
> 			Echo.
10.
> 			call worker.bat "%%a"
11.
> 		)
12.
> 	)
13.
> )
14.
> 
worker.bat:
01.
@Echo off
02.
> set file=%1
03.
> set fdate=%~t1
04.
> set fday=%fdate:~0,2%
05.
> set fmonth=%fdate:~3,2%
06.
> set fyear=%fdate:~6,4%
07.
> set folname=%fyear%_%fmonth%_%fday%
08.
> :work
09.
> if exist %folname%\NUL (
10.
> 	Echo Verschiebe Datei %file% nach %folname%
11.
> 	Echo ----
12.
> 	move %file% "%folname%\"%file% 
13.
> ) else (
14.
> 	Echo Erstelle Verzeichnis %folname%
15.
> 	Echo ----
16.
> 	md "%folname%"
17.
> 	goto work
18.
> )
Updated Version, kopiert sich nicht selbst

besteht die möglichkeit die sortierten bilder / ordner in ein anderes verzeichnis zu verschieben!?

z.b. die bilder liegen im ordner "c:\1" sollen aber in den ordner "c:\1_archiv\".
Bitte warten ..
Mitglied: bastla
01.08.2012 um 00:43 Uhr
Hallo c0by1985 und willkommen im Forum!

Du kannst den Pfad einfach jedem "%folname%" (also in den Zeilen 12 und 16 der "worker.bat") voranstellen ...

Grüße
bastla
Bitte warten ..
Mitglied: bastla
01.08.2012, aktualisiert um 11:08 Uhr
... bzw, um das etwas übersichtlicher zu gestalten (nur ein Batch nötig):
01.
@Echo off & setlocal
02.
set "Quelle=C:\1\"
03.
set "Ziel=C:\1_archiv\"
04.

05.
for %%a in ("%Quelle%*") do (
06.
    if NOT "%%~nxa"=="%~nx0" (
07.
        Echo Verarbeite Datei "%%a"
08.
        set "fdate=%%~ta"
09.
        setlocal enabledelayedexpansion
10.
        set "fday=!fdate:~0,2!"
11.
        set "fmonth=!fdate:~3,2!"
12.
        set "fyear=!fdate:~6,4!"
13.
        set "folname=!fyear!_!fmonth!_!fday!"
14.
        md "%Ziel%!folname!" 2>nul
15.
        Echo Verschiebe Datei "%%a" nach "!folname!"
16.
        move "%%a" "%Ziel%!folname!\"
17.
        endlocal
18.
    )
19.
)
Bitte darauf achten, dass die Pfade in Zeile 2 und 3 mit "\" enden!

Um die ursprüngliche Funktionalität (Quelle und Ziel sind jeweils der aktuelle Ordner) einfach die Zeilen 2 und 3 weglassen bzw auf
01.
set "Quelle="
02.
set "Ziel="
ändern ...

Schließlich noch eine Drag & Drop-Variante mit vorgegebenem Ziel: Zeile 2 auf
if [%1] neq [] set "Quelle=%~1\"
ändern - damit wird dann entweder ein übergebener Ordner oder der aktuelle Ordner als Quelle verwendet ...

Grüße
bastla
Bitte warten ..
Ähnliche Inhalte
Batch & Shell

Robocopy Zielverzeichnis mit Dateidatum versehen

Frage von kubjo-jkBatch & Shell3 Kommentare

Hallo Leute, ich würde gerne Bilder einer Speicherkarte via robocopy auf eine Festplatte kopieren lassen und die Bilder gleich ...

Batch & Shell

Datei mit Datum im Namen erstellen

gelöst Frage von pbelclBatch & Shell6 Kommentare

Ich habe mir ein kleines Batch geschrieben, das mir eine Date erstellt, die im Namen das Datum und die ...

JavaScript

Zeit und Datum in Datei schreiben

Frage von MarcysJavaScript2 Kommentare

Hallo, mit Node-Red habe ich den Temperatursensor DHT22 ans Laufen bekommen. Ich habe zwei Node-Funktionen erstellt, die mir die ...

Batch & Shell

Kopieren einer Datei mit Datum per PS

gelöst Frage von xm-bitBatch & Shell4 Kommentare

Hallo, ich brauche mal eure Hilfe. Ich möchte eine Datei per Powershell kopieren. Im Ergebnis soll gleichzeitig das aktuelle ...

Neue Wissensbeiträge
Netzwerkmanagement

Neue Angebotsmail ist raus: 10 Prozent auf alle Docusnap Lizenzen

Information von Frank vor 58 MinutenNetzwerkmanagement

Hallo IT-Pros, unsere Angebotsmail ist raus: Exklusive für unsere Administrator.de-Mitglieder gibt es heute auf alle Miet- und Kauflizenzen von ...

Windows 10
Windows 10 Mai 2019 Update (Version 1903) ist da
Information von kgborn vor 4 StundenWindows 101 Kommentar

Nur ein kurzer Infosplitter: Microsoft hat die Nacht (21. Mai 2019) das Funktionsupdate auf Windows 10 Version 1903 freigegeben. ...

E-Mail

Newsletter: Unread News - IT News in Byte Länge

Tipp von franktaylor vor 16 StundenE-Mail8 Kommentare

Hallo, würde gerne auf einen Newsletter hinweisen, den ich heute per Zufall gefunden und mit euch gerne teilen möchte: ...

Outlook & Mail

Outlook 2016 stürzt ab, wenn man ein (at)- Zeichen im Text einer neuen E-Mail schreibt

Tipp von Enriqe vor 1 TagOutlook & Mail4 Kommentare

Bei uns in der Firma häuften sich die Fälle, bei denen sich Outlook kommentarlos verabschiedet, wenn man ein - ...

Heiß diskutierte Inhalte
DNS
DNS fragt falsche ip zuerst ab
gelöst Frage von recoldDNS23 Kommentare

Hallo zusammen, wollte mal fragen, was mit meiner DNS falsch ist? der A eintrag 88.48.118.88 sollte auf den ts3 ...

Windows Server
Passwortänderung an RODC möglich?
Frage von DexthaWindows Server23 Kommentare

Hallo, ich habe einen RODC, auf welchen ich über ldaps (Web-Seite mit php7) Passwortänderungen durchführen möchte. Ist das grundsätzlich ...

Windows 10
Windows am MAC
gelöst Frage von LeeX01Windows 1019 Kommentare

Guten Abend zusammen, ich habe gerade ein Macbook Pro vor mir welches ich mit einem Windows 10 to go ...

Windows Server
RDP als Citrix Alternative
gelöst Frage von samreinWindows Server18 Kommentare

Hallo zusammen, ich bin neu hier und das ist mein erster Beitrag. Ich bin Einzeladmin und wir setzen bei ...