dogukann
Goto Top

Dateinamen in Serie erweitern

Ich möchte von einer Liste die Dateinamen um 2 Wörter und ein Zeichen erweitern.

z.B.

hab ich eine fortlaufende liste mit der bezeichnung:
P201234.MPF
P201235.MPF
P201236.MPF

Der Dateiname soll so heißen:
PR_201234.MPF
PR_201235.MPF
PR_201236.MPF

Wie kann ich das mit den einfachsten mitteln ändern???

Dank im Vorraus an alle die mir Helfen wollen.

Content-Key: 228217

Url: https://administrator.de/contentid/228217

Printed on: April 23, 2024 at 12:04 o'clock

Member: Pjordorf
Solution Pjordorf Jan 30, 2014, updated at Jan 31, 2014 at 11:08:38 (UTC)
Goto Top
Hallo,

Zitat von @Dogukann:
Wie kann ich das mit den einfachsten mitteln ändern???
Was sind für dich einfachste Mittel?

Visual Basic?
Visula XYZ?
PHP*
Java*
Batch*
Compiler deiner wahl*
Gekauftes programm auf COBOL Basis*
oder einfach nur ein Kostenloses Programm was dies und noch viel mehr kann?


Wenns reicht, dann diese Frage als gelöst markieren, sonst deine Wünsche auf diesen Wunschzettel schreiben.

Gruß,
Peter
Member: colinardo
Solution colinardo Jan 30, 2014, updated at Jan 31, 2014 at 11:08:36 (UTC)
Goto Top
Hallo Dogukann, Willkommen im Forum!
das wäre eigentlich ein Fall für ein Programm wie z.B. Ant Renamer
du kannst es aber auch mit einer einfachen Batchdatei machen:
(Zeile 2 den Pfad zu den Dateien noch ändern)
@echo off & setlocal ENABLEDELAYEDEXPANSION
set "Pfad=C:\Pfadzudendateien\*.MPF"  
for /f "delims=" %%a in ('dir /B /S /A-D "%Pfad%"') DO @(  
 set filename=%%~nxa
 set newname=PR_!filename:~1!
 ren "%%~a" "!newname!"  
)
oder Powershell:
dir "C:\Pfadzudendateien\*.MPF" | ?{!$_.PSIscontainer} | %{rename-item $_.Fullname "$($_.Name.Substring(0,1))R_$($_.Name.Substring(1))"}  
Grüße Uwe
Member: bastla
Solution bastla Jan 30, 2014, updated at Jan 31, 2014 at 11:08:50 (UTC)
Goto Top
@ colinardo
... wobei sich die Batch-Zeilen 3 bis 7 (ungetestet) ohne Verlust an Funktionalität auf
for /f "delims" %%a in ('dir /B /S /A-D "%Pfad%"') do for /f "tokens=1* delims=P" %%i in ("%%~nxa") do ren "%%a" "PR_%%i%%j"
oder etwas übersichtlicher
for /f "delims" %%a in ('dir /B /S /A-D "%Pfad%"') do (  
    for /f "tokens=1* delims=P" %%i in ("%%~nxa") do ren "%%a" "PR_%%i%%j"  
)
reduzieren ließen - und "delayedExpansion" wäre dann auch nicht mehr erforderlich ...

Die Variable %Pfad% würde ich zur Sicherheit dabei mit
set "Pfad=C:\Pfadzudendateien\P*.MPF"
festlegen.

Grüße
bastla

[Edit] Berücksichtigung des ersten Zeichens ergänzt [/Edit]
Member: Dogukann
Dogukann Jan 30, 2014 at 19:12:26 (UTC)
Goto Top
Danke für die schnelle Antwort.
Ich werde es morgen früh sofort Testen und hier Bescheid geben.

Danke, danke und nochmals Danke.