Powershell Probleme beim umbenennen von Dateien

Red_Crown88734

Cadet 1st Year
Registriert
Mai 2018
Beiträge
12
Hallo liebe Programmierfreunde,

ich habe folgendes Problem:

Ich habe ein Script geschrieben das alle Dateien im Angegebenen Ordner am Ende des Dateinamens mit _D versehen soll.

Um sicher zu gehen das es sich um das Dateiende handelt habe ich angegeben das der Punkt vor dem Dateityp der Marker sein soll der erkannt wird vor den dann das _D gesetzt wird

Im Script sieht das so aus:

$NewItem = $Item.Name -replace "\.","_D."

Das funktioniert auch einwandfrei.
Jetzt zum Problem:
Bei einigen Probedurchläufen hab ich festgestellt das in einigen Odnern Dateien existieren die mehrere Punkte im Dateinamen enthalten und so setzt PS hinter jeden Punkt ein _D. was ich natürlich vermeiden will.

Hat jemand eine Idee wie ich alle punkte außer dem letzten Ausschließen kann?
 
Schon mal probiert das Skript so umzuschreiben?

$NewItem = $Item.Name -replace "\.???","_D.???"

Dann sollten nur noch Dateien umbenannt werden, die nach dem Punkt drei Zeichen haben. Eventuell brauchst noch ein zweites Skript mit nur zwei Fragezeichen für kurze Dateiendungen.

Gruß
 
Also deins Würde jetzt alle Punkte ignorieren die nicht genau 3 Zeichen hinter ihnen haben?

Zum Beispiel: Hallo.Welt.txt würde zu Hallo.Welt_D.txt?

Das wäre eine Option =)

Danke
Ergänzung ()

Ich hatte noch die Idee das ich mit einer IF Anweisung alle punkte außer dem Letzten zu einem "-" mache aber da haperts an der Syntax am selben Grundproblem: das ich nicht weis wie ich übergebe "Nimm alle punkte und ersetz sie durch "-" aber exkludiere den letzten...
 
Zuletzt bearbeitet:

Ähnliche Themen

Zurück
Oben