Anleitung

Dateien mit PowerShell umbenennen

Wenn Du die Regel wiederholt brauchst, bietet PowerShell eine präzise Lösung – mit Testordner und WhatIf.

Vor jedem Befehl

Arbeite zunächst in einem kopierten Testordner. Öffne dort PowerShell und prüfe mit Get-Location, dass Du wirklich im richtigen Ordner bist. Die Beispiele unten bearbeiten nur Dateien mit .jpg im aktuellen Ordner, keine Unterordner. -WhatIf zeigt geplante Aktionen, ohne die Umbenennung auszuführen. Es ersetzt keine Prüfung auf bereits existierende Zielnamen.

Präfix zu JPG-Dateien hinzufügen

Dieser Befehl zeigt zunächst nur die geplante Änderung:

Get-ChildItem -File -Filter '*.jpg' |
  Rename-Item -NewName { 'Urlaub_' + $_.BaseName + $_.Extension } -WhatIf

Aus Bild1.jpg würde Urlaub_Bild1.jpg. Wenn die Ausgabe stimmt, führst Du denselben Befehl ohne -WhatIf aus. Starte ihn nicht zweimal: Beim zweiten Lauf würde aus Urlaub_Bild1.jpg der Name Urlaub_Urlaub_Bild1.jpg.

Vorher/Nachher als Liste anzeigen

Wenn Du die Zieldateinamen vor dem Rename-Item übersichtlich sehen möchtest:

Get-ChildItem -File -Filter '*.jpg' |
  ForEach-Object {
    [pscustomobject]@{
      Alt = $_.Name
      Neu = 'Urlaub_' + $_.BaseName + $_.Extension
    }
  }

Diese Ausgabe ändert nichts. Prüfe, ob die neuen Namen eindeutig und im Zielordner noch frei sind.

Dateien mit 001, 002, 003 nummerieren

$i = 1
Get-ChildItem -File -Filter '*.jpg' | Sort-Object Name | ForEach-Object {
  $newName = 'Foto_{0:D3}{1}' -f $i, $_.Extension
  Rename-Item -LiteralPath $_.FullName -NewName $newName -WhatIf
  $i++
}

Sort-Object Name legt die Reihenfolge ausdrücklich fest. {0:D3} erzeugt mindestens drei Ziffern. -LiteralPath behandelt Sonderzeichen im ursprünglichen Pfad wörtlich. Für die tatsächliche Ausführung entfernst Du -WhatIf erst nach einer erfolgreichen Probe an Kopien.

Fehler und Grenzen

Problem Prüfe
Zugriff verweigert Schreibrechte und geöffnete Dateien
Zielname existiert Andere Dateien im Ordner und bereits geplante Namen
Falsche Reihenfolge Sortierung vor ForEach-Object
Falsche Endung Ob -Filter die gewünschten Dateien erfasst
Zweiter Lauf verändert erneut Regel so gestalten, dass sie bereits bearbeitete Namen überspringt

Rename-Item kann keine vorhandene Datei ersetzen und ist kein Werkzeug zum Verschieben in einen anderen Ordner. Die Parameter -LiteralPath und -WhatIf stehen in der Microsoft-Referenz. Die beiden Umbenennungsbefehle wurden mit einer Testdatei unter PowerShell und -WhatIf ausgeführt.

Wenn Du eine grafische Vorschau bevorzugst, nutze PowerRename. Eine Namensidee kannst Du auch im Simulator ohne Dateizugriff prüfen.