Dateiname verkürzen, ändern und nummerieren
Hallo
ich hab eine Frage ich habe in einen Verzeichniss mehre Dateien wo ich mittels Batch den Dateinamen verkürzen ändern und nummerien möchte.
hier ein Beispiel so sehen die Dateien im Verzeichnis aus
Post.6662010001059.po1025c1rn81ex13woc8enz9kz65qrf5.20190412134439.71b..pdf
Post.6662010001059.po1025zhoyysuv5hfxzirx78isgj2m88.20190412132949.71b..pdf
Post.6662010001059.po1026jchsq1nf41xdm5f2cfytn5by9p.20190412133721.71b..pdf
und zu diesen Ergebnis möchte ich kommen.
Post.6662010001059.71b.20190412134439.1.pdf
Post.6662010001059.71b.20190412132949.2.pdf
Post.6662010001059.71b.20190412133721.3.pdf
kann mir jemand weiterhelfen
danke im voraus
ich hab eine Frage ich habe in einen Verzeichniss mehre Dateien wo ich mittels Batch den Dateinamen verkürzen ändern und nummerien möchte.
hier ein Beispiel so sehen die Dateien im Verzeichnis aus
Post.6662010001059.po1025c1rn81ex13woc8enz9kz65qrf5.20190412134439.71b..pdf
Post.6662010001059.po1025zhoyysuv5hfxzirx78isgj2m88.20190412132949.71b..pdf
Post.6662010001059.po1026jchsq1nf41xdm5f2cfytn5by9p.20190412133721.71b..pdf
und zu diesen Ergebnis möchte ich kommen.
Post.6662010001059.71b.20190412134439.1.pdf
Post.6662010001059.71b.20190412132949.2.pdf
Post.6662010001059.71b.20190412133721.3.pdf
kann mir jemand weiterhelfen
danke im voraus
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 441143
Url: https://administrator.de/contentid/441143
Ausgedruckt am: 23.11.2024 um 01:11 Uhr
9 Kommentare
Neuester Kommentar
Still batch verfrickeling ?? Richte deine Satschüssel mal neu aus .
@echo off
powershell -Executionpolicy ByPass -NoP -C "gci 'C:\daten' -File -Filter *.pdf | ?{$_.Basename -match '^(.+)\.(.+)\.(.+)\.(.+)\.(.+).'} | group {$matches[0..1]} | %%{$cnt = 1; $_.Group | %%{rename-item $_.Fullname -NewName \"$($matches[1]).$($matches[2]).$($matches[5]).$($matches[4]).$cnt.pdf\" ; $cnt++}}"
Zitat von @tommhii:
ich wollte das aber in einen Dos Batch laufen lassen. Hast Du dafür auch einen Lösung?
Das oben ist eine Batch -> @echo off.ich wollte das aber in einen Dos Batch laufen lassen. Hast Du dafür auch einen Lösung?
Auch das kein Thema, in der Schublade auf dem Dachboden kram...:
Zu Empfehlen:
Tutorial zur FOR-Schleife
Dann kannst du es selbst und musst nicht jahrelang immer das selbe Thema erfragen .
@echo off & setlocal ENABLEDELAYEDEXPANSION
set "folder=D:\test"
set "lasttoken="
for /f "delims=" %%a in ('dir /b /on "%folder%\*.pdf"') do (
for /f "tokens=1-5 delims=." %%b in ("%%~na") do (
if "!lasttoken!" NEQ "%%c" set cnt=1
ren "%folder%\%%a" "%%b.%%c.%%f.%%e.!cnt!.pdf"
set /a cnt+=1
set "lasttoken=%%c"
)
)
Tutorial zur FOR-Schleife
Dann kannst du es selbst und musst nicht jahrelang immer das selbe Thema erfragen .
Zitat von @tommhii:
Sieht gut aus in der DOS box steht zwar die richtige Anweisung, aber er führt die änderung am Dateinamen nicht durch.
Das war so vorgesehen das du überprüfen kannst was passieren würde. Entferne einfach das echo vor der Zeile 7 . Darauf hättest du aber auch selbst kommen können. Da sieht man mal wieder das hier nur Copy n' Paste gemacht wird und man sich die Anweisungen nicht einmal im Ansatz ansieht und versucht zu verstehen .Sieht gut aus in der DOS box steht zwar die richtige Anweisung, aber er führt die änderung am Dateinamen nicht durch.
Dann bitte auch Danke.