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
GELÖST

Dateien nach Datei-Eigenschaften umbenennen via Batch

Frage Entwicklung Batch & Shell

Mitglied: exoroth

exoroth (Level 1) - Jetzt verbinden

29.06.2008, aktualisiert 20:52 Uhr, 7136 Aufrufe, 7 Kommentare

Guten Tag liebe leute,

also im vorraus: "Ich bin ein Anfänger"

Ich versuche mir eine batch datei zu schreiben, welche mir bilder umbenennt.
Aus "name.jpg" soll "erstellungsdatum.name.jpg" werden

Hierbei ist mir wichtig dass ALLE bilder auf einmal in dem ordner (c:\bilder\) umbenannt werden.

Bis jetzt bin ich soweit gekommen, dass mir alle dateinamen und das datum angezeigt wird, das problem ist das umbenennen.

Code:

@echo off & setlocal EnableDelayedExpansion
for /f "delims=" %%i in ('dir /b') do (
echo %%~i
echo %%~ti
echo.)

wobei ich mir dieses " "delims=" " noch nicht so richtig erklären kann, aber ohne funktioniert es nicht...


Mein bisheriger ansatz war:

Code:

ren "%%~i" "%%~ti.%%~"i


funktioniert aber nicht :-P

Ich danke euch schonmal im vorraus


Mit freundlichen Grüßen

Exoroth
Mitglied: Biber
29.06.2008 um 18:36 Uhr
Moin Exoroth,

willkommen im Forum.
Ich danke euch schonmal im vorraus
Das ist diesem Nebenarm des Forums nicht so gern gesehen - wir bevorzugen Rückmeldungen.

Versuche es mal mit
01.
For /R "D:\EinRootVerzeichnis" %i in (*.jpg) do @echo ren "%i" "%~ti.%i"
...vom CMD-Prompt aus.
Bei Deinem Code....
ren "%%~i" "%%~ti.%%~"i
..ist das abschliessende Anführungszeichen eine Position zu früh...

Grüße
Biber

[Edit] @bastla ... allerdings stört auch der ":" aus der Uhrzeit, -->stimmt. Nehme alles zurück. [/Edit]
Bitte warten ..
Mitglied: bastla
29.06.2008 um 18:38 Uhr
... allerdings stört auch der ":" aus der Uhrzeit, daher doch ein Batch:
01.
@echo off & setlocal 
02.
for /f "delims=" %%i in ('dir /b') do call :ProcessFile "%%i" 
03.
goto :eof 
04.
 
05.
:ProcessFile 
06.
set "New=%~t1.%~nx1" 
07.
echo ren %1 "%New::=.%" 
08.
goto :eof
Grüße
bastla

[Edit] Zum stressfreien Testen habe ich vor das "ren" noch ein "echo" gesetzt, damit die Umbenennungsbefehle nur angezeigt werden. [/Edit]
Bitte warten ..
Mitglied: exoroth
29.06.2008 um 19:50 Uhr
Hallo ihr zwei,

ich bedanke mich für die schnellen und funktionierenden antwort!!!
Problem nur noch, es werden nur bilder umbenannt die aus einem wort bestehen. zB. "Hallo.jpg" wird umbenannt, "Hallo du.jpg" jedoch nicht.
Noch zwei kleine frage dazu (man will ja was dazulernen ^^).

1. Könnte mir einer noch grob erklären:

Zeile 2 "delims"
Zeile 6 "New=%~t1.%~nx1"
Zeile 7 "%New::=.%"

werde daraus nicht wirklich schlau, sieht aber interessant aus.


2. Wie könnte ich da ein filter einbringen, dass er wirklich nur die *.jpg bilder umbenennt.


Mit freundlichen Grüßen

Exoroth
Bitte warten ..
Mitglied: Biber
29.06.2008 um 20:31 Uhr
Moin Exoroth,

ich versuche es mal:

1. Könnte mir einer noch grob erklären:
Zeile 2 "delims"
"delims=" bedeutet: es gibt keine Delimiter/Worttrenner in dieser Zeile.
->Anweisung: Lass die Zeile ganz, so wie sie ist.
Zeile 6 "New=%~t1.%~nx1"
Setze Variable NEW mit dem Wert "DatumDerDatei.NameUndEndungDerDatei"
->Beispiel "28.02.2008 11:45.AngelaNackig.jpg"
Zeile 7 "%New::=.%"
Ersetze in NEW alle ":" durch "."
->Beispiel "28.02.2008 11.45.AngelaNackig.jpg"

2. Wie könnte ich da ein filter einbringen, dass er wirklich nur die *.jpg bilder umbenennt.
Statt "dir /b" ein "Dir /b *.jpg"

Grüße
Biber
Bitte warten ..
Mitglied: bastla
29.06.2008 um 20:38 Uhr
Hallo Exoroth!

Da Biber schon wider schneller war, nur noch eine Ergänzung: Mit der Eingabe von "for /?" bzw "set /?" an der Kommandozeile erhältst Du eine Menge Info zu Deinen Fragen unter 1.

"delims=" benötigst Du übrigens hier konkret dann, wenn der Dateiname Leerzeichen enthält, da mit der Defaulteinstellung (ohne Angabe von "delims") Leerzeichen (und TAB) als Trennzeichen gelten und Du daher nur den ersten Teil (vor dem ersten Leerzeichen) des Dateinamens erhieltest.

Grüße
bastla
Bitte warten ..
Mitglied: exoroth
29.06.2008 um 20:46 Uhr
Hallo Biber,

es funktioniert nun so wie gewollt, kA warum es auf einmal geht, aber seit dem ich dieses "dir /b" durch "Dir /b *.jpg" ersetzt hatte gings dann!

Vielen Dank nochmal für die schnellen und kompetenten Antworten.

Kann geschlossen werden


Mit freundlichen Grüßen

Exoroth
Bitte warten ..
Mitglied: bastla
29.06.2008 um 20:52 Uhr
Hallo exoroth!

Kann geschlossen werden
... kannst Du auch so zeigen: http://www.administrator.de/index.php?faq=32

Grüße
bastla
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst Batch Datei: PDF Dateien verschieben, umbenennen und löschen (4)

Frage von F0rcehunter zum Thema Batch & Shell ...

Batch & Shell
Umbenennen entpackter Dateien nach Dateinamen der rar- zip-Datei

Frage von windows-nutzer zum Thema Batch & Shell ...

Batch & Shell
gelöst Alle Dateien in einem Ordner umbenennen (5)

Frage von l.scheper zum Thema Batch & Shell ...

Viren und Trojaner
WannaCry - wiederhergestellte Dateien umbenennen (7)

Frage von MasterPhil zum Thema Viren und Trojaner ...

Neue Wissensbeiträge
Ubuntu

Ubuntu 17.10 steht zum Download bereit

(3)

Information von Frank zum Thema Ubuntu ...

Datenschutz

Autofahrer-Pranger - Bewertungsportal illegal

(8)

Information von BassFishFox zum Thema Datenschutz ...

Windows 10

Neues Win10 Funktionsupdate verbuggt RemoteApp

(8)

Information von thomasreischer zum Thema Windows 10 ...

Microsoft

Die neuen RSAT-Tools für Win10 1709 sind da

(2)

Information von DerWoWusste zum Thema Microsoft ...

Heiß diskutierte Inhalte
Windows 10
Seekrank bei Windows 10 (18)

Frage von zauberer123 zum Thema Windows 10 ...

Windows 10
Windows 10 Fall Creators Update Fehler (14)

Frage von ZeroCool23 zum Thema Windows 10 ...

Router & Routing
gelöst Getrenntes Routing bei VoIP und Daten (12)

Frage von Hobbystern zum Thema Router & Routing ...