Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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 15.11.2012 um 11:41:56 Uhr
Zitat von andimue:
Bei Eingabe der Suchbegriffe "umbennenen" und "batch" kommen reichlich Treffer
Ja, leider.
Set /a rgc+=1
#851
Zitat von Hitman4021:
-Zum Umbenenen benutzt du am besten move oder ren
set /a rgc+=1
#852
[Edit Nachtrag]

Zitat von sL0w2k5:
----
Die batch soll nun hier liegen:
PFAD01/Umbennen.bat
Set /a rgc+=1
#853
[/Edit Nachtrag]
Und bennenen soll sie nur die Unterordner 1-X
[Edit Nachtrag2]
Set /a rgc+=1
#854
[/Edit Nachtrag2 & Thx@bastla]

Per Batch Datei, Teile von Dateinamen ändern oder hinzufügen

Frage Entwicklung Batch & Shell

Mitglied: sL0w2k5

sL0w2k5 (Level 1) - Jetzt verbinden

15.11.2012 um 07:21 Uhr, 3115 Aufrufe, 12 Kommentare

Hallo und guten Morgen zusammen,

ich habe folgendes Problem, welches zu lösen gilt und ich hoffe, ihr könnt mir helfen.

Ich habe einen Hauptordner mit mehreren Unterordnern, in denen sich Dateien mit verschiedenen Formaten befinden.
Die Dateinamen sind verschieden und auch unterschiedlich lang.
Vor jedem Dateinamen muss das aktuelle Datum ergänzt werden.

Bsp:

Bild01.jpg muss nachher 121115 Bild01.jpg heißen usw.

Habt ihr mir da eine Batchlösung die das umsetzen kann?
Am besten eine die ich nicht in jeden Unterordner ausführen muss, da es sehr viele sind.

Sie soll auch nur die Dateien in den Unterordnern umbenennen und nicht alles.

Also

PFAD01/Unterordner 1-X

Die batch soll nun hier liegen:

PFAD01/Umbennen.bat

Und bennenen soll sie nur die Unterordner 1-X


Ich hoffe ich habe mich verständlich ausgedrückt und bedanke mich schonmal für eure Bemühungen.

Viele Grüße

sL0w2k5
Mitglied: andimue
15.11.2012, aktualisiert um 13:44 Uhr
Guten Morgen auch dir,

hast du schonmal die Suchfunktion hier im Forum verwendet? Bei Eingabe der Suchbegriffe "umbenennen" und "batch" kommen reichlich Treffer

Viele Grüße
Bitte warten ..
Mitglied: sL0w2k5
15.11.2012 um 07:59 Uhr
Hallo andimue

Die habe ich bemüht aber leider bin ich nicht auf eine befriedigende Lösung gefunden.
So gut kenn ich mich nicht aus um es umzuschreiben.

Grüße
Bitte warten ..
Mitglied: Hitman4021
15.11.2012, aktualisiert um 12:12 Uhr
Hallo,

ich schreibe dir jetzt mal ein paar Ansatzpunkte auf:
-Die Variable %date% enthält das aktuelle Datum.
-Zum Umbenennen benutzt du am besten move oder ren
-Zum durchlaufen nimmst du ne For Schleife die rekursiv in die Ordner geht.

Das Könnte ungefähr so aussehen (UNGETESTET!)
01.
@echo off && setlocal 
02.
dir /b /s *.jpg > temp.txt 
03.
call :LaufeOrdnerDurch 
04.
goto :eof 
05.
 
06.
:LaufeOrdnerDurch 
07.
for %%f in (temp.txt) do set "SourcName=%%~nf" & call :Verschiebe "%%f" 
08.
goto :eof 
09.
 
10.
:Verschiebe 
11.
ren %1 "%SourcName:~,15%%~x1" 
12.
goto :eof
Gruß

@Biber Danke ist korrigiert!
Bitte warten ..
Mitglied: andimue
15.11.2012 um 11:23 Uhr
Noch ein Hinweis:

am Anfang des Skriptes sollte man noch in das Laufwerk + Verzeichnis wechseln, in dem das Skript steht, in deinem Fall also z.B. nach PFAD01


01.
rem  Wechseln ins Laufwerk 
02.
%~d0 
03.
rem  Wechseln ins Verzeichnis 
04.
cd %~p0
Beschrieben sind die Parameter im CALL-Kommando ( call /? )
Bitte warten ..
Mitglied: bastla
15.11.2012 um 18:58 Uhr
@ andimue

Wenn du schon nicht "pushd" verwendest, dann doch bitte wenigstens "cd /d" (und dass Dateinamen / Pfade gelegentlich Leer- oder Sonderzeichen enthalten, solltest Du auch berücksichtigen) ...

Grüße
bastla
Bitte warten ..
Mitglied: bastla
15.11.2012, aktualisiert um 19:11 Uhr
@ Hitman4021

Besonders elegant ist die Variante mit Temp-Datei ja eigentlich nicht - und schon gar nicht, wenn Du die dann mit "for" ohne "/f" auslesen willst - daher vielleicht besser doch so:
01.
@echo off & setlocal 
02.
set "Datum=%date:~-2%%date:~-7,2%%date:~-10,2%" 
03.
for /f "delims=" %%i in ('dir /s /b *.jpg') do echo ren "%%i" "%Datum% %%~nxi"
Das "echo" vor dem "ren" dient übrigens dem gefahrlosen Testen, da so die Umbenenn-Befehle nur angezeigt werden ...

Grüße
bastla
Bitte warten ..
Mitglied: bastla
15.11.2012 um 19:10 Uhr
Hallo sL0w2k5 und willkommen im Forum!

Lässt sich "Und bennenen soll sie nur die Unterordner 1-X" noch etwas präzisieren (zB im Hinblick auf die Frage, ob tatsächlich nur Dateien aus den Unterordnern, aber nicht jene aus dem Ordner "PFAD01", verarbeitet werden sollen, oder, ob sämtliche oder doch nur die jpg-Dateien umbenannt werden sollen)?

Grüße
bastla
Bitte warten ..
Mitglied: sL0w2k5
16.11.2012 um 06:53 Uhr
Guten Morgen zusammen und vielen Dank für die zahlreichen Antworten!

@bastla

die Ordnerstruktur sieht so aus:

PFAD1/Ordner1
'----/Ordner2
'----/Ordner3 usw.
'----/umbenennen.bat

Die Unterordner sind alle unterschiedlich benannt und folgen keinem Muster.

Es sollen tatsächlich nur die Dateinen aus den Unterordnern geändert werden, da es sich bei "PFAD1" um einen Tagesordnert handelt.

Das mit den jpg-Dateien war nur als Beispiel gedacht, es sollen sämtliche umbenannt werden. Es können alle möglichen Dateiendungen vorhanden sein.

Vielen Dank für eure Bemühungen!
Bitte warten ..
Mitglied: sL0w2k5
16.11.2012 um 07:11 Uhr
Um welche Zeilen muss es noch erweitert werden, um die Anzahl der umbenannten Datein, wie folgt, anzuzeigen:

Ordner 1 XY-Dateien
Ordner 2 XY-Dateien

usw?

Viele Grüße
Bitte warten ..
Mitglied: andimue
16.11.2012 um 13:19 Uhr
Zitat von bastla:
@ andimue

Wenn du schon nicht "pushd" verwendest, dann doch bitte wenigstens "cd /d" (und dass Dateinamen /
Pfade gelegentlich Leer- oder Sonderzeichen enthalten, solltest Du auch berücksichtigen) ...

Grüße
bastla

@ bastla

du hast natürlich Recht - wie immer
Aber manche Dinge sind so drin, die mach ich einfach automatisch (wobei zumindest aber ein cd in ein Verzeichnis mit Blank im Namen auch ohne Hochkommata funktioniert, deshalb hab ich mir wohl das " nicht angewöhnt)

Aber ich bin echt immer dankbar für nen Tipp

Gruß Andi
Bitte warten ..
Mitglied: bastla
16.11.2012 um 16:13 Uhr
Hallo andimue!

Dass
ein cd in ein Verzeichnis mit Blank im Namen auch ohne Hochkommata funktioniert
ist mal eine echte Überraschung (wobei ich nie auf die Idee gekommen wäre, das überhaupt zu versuchen) - wieder was gelernt ...

Grüße
bastla
Bitte warten ..
Mitglied: bastla
16.11.2012 um 16:43 Uhr
Hallo sL0w2k5!

Wenn der Vorgang auf Unterordner beschränkt sein muss, brauchst Du zunächst eine Schleife für diese Ordner:
01.
@echo off & setlocal 
02.
set "Datum=%date:~-2%%date:~-7,2%%date:~-10,2%" 
03.
for /d %%o in (D:\PFAD1\*) do ( 
04.
    for /f "delims=" %%i in ('dir /s /b /a-d "%%o"') do echo ren "%%i" "%Datum% %%~nxi" 
05.
)
Hinsichtlich der Anzahl der umbenannten Dateien ist nicht klar, worauf sie sich bezieht - soll sie neben "Ordner1" auch für "Ordner1\Unterordner1" ausgegeben werden, oder nur alle Dateien unterhalb von "Ordner1" zusammenfassen? Falls letztere Variante gewünscht wäre, etwa so:
01.
@echo off & setlocal 
02.
set "Datum=%date:~-2%%date:~-7,2%%date:~-10,2%" 
03.
for /d %%o in (D:\PFAD1\*) do call :ProcessDir "%%o" 
04.
goto :eof 
05.
 
06.
:ProcessDir 
07.
set /a Anzahl=0 
08.
for /f "delims=" %%i in ('dir /s /b /a-d %1^|findstr /bvc:"%Datum% "') do ( 
09.
    echo ren "%%i" "%Datum% %%~nxi" 
10.
    set /a Anzahl+=1 
11.
12.
echo %Anzahl% Dateien in %1 
13.
goto :eof
Natürlich wäre noch anzumerken, dass nur am selben Tag erkennbar ist, dass das Datum dem Dateinamen bereits hinzugefügt wurde (wird in Variante 2 kontrolliert) - wenn der Batch morgen oder in 2 Wochen wieder auf die selben Dateien "losgelassen" wird, würde natürlich jeweils das dann aktuelle Tagesdatum nochmals hinzugefügt. Abhilfe könnte hier ein Trennzeichen nach dem Datum (zB "_") schaffen:
for /f "delims=" %%i in ('dir /s /b /a-d %1^|findstr /v "\\[0-9][0-9][0-9][0-9][0-9][0-9]_"') do (
- bei dieser einfachen Variante würden allerdings auch alle Ordner, deren Name mit 6 Ziffern und "_" beginnt, ignoriert werden ...

Grüße
bastla
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Batch & Shell
Ä in batch Datei (12)

Frage von BergEnte zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
gelöst Server erkennt Client nicht wenn er ausserhalb des DHCP Pools liegt (28)

Frage von Mar-west zum Thema LAN, WAN, Wireless ...

Microsoft
Ordner mit LW-Buchstaben versehen und benennen (19)

Frage von Xaero1982 zum Thema Microsoft ...

Outlook & Mail
gelöst Outlook 2010 findet ost datei nicht (19)

Frage von Floh21 zum Thema Outlook & Mail ...

Windows Server
Server 2008R2 startet nicht mehr (Bad Patch 0xa) (18)

Frage von Haures zum Thema Windows Server ...