2016-07-24 15 views
0

Ich habe eine bestimmte Dateien in verschiedenen Verzeichnissen in einem bestimmten übergeordneten Verzeichnis enthalten. Einige dieser Dateien haben einen bestimmten Text als Präfix. Ich möchte diesen Text durch Powershell durch einen anderen Text ersetzen. Ich habe es unten versucht. Aber kein Glück. Die Powershell-Ausgabe erfolgt so, als ob die Dateinamen umbenannt wurden. Jedoch, wenn ich in das Verzeichnis überprüft zurück es war nicht wirklich wider:rekursiv ersetzen bestimmten Text in allen Dateien nach bestimmten Muster mit einem anderen Text

enter image description here

Antwort

0

Ihre ForEach-Object Schleife dauert nur den Namen der Dateien, ersetzt das Präfix, dann spiegelt die geänderte Zeichenfolge. Verwenden Sie Rename-Item statt ForEach-Object:

Get-ChildItem abc* | Rename-Item -NewName { $_.Name.Replace('abc', 'uvw') } 
+0

Nicht rekursiv umbenennen Dateien in Unterordner – Mahesha999

+0

arbeiten hinzugefügt '-Recurse' nach' Get-ChildItem' scheint zu arbeiten. Schreibe ich damit? – Mahesha999

+0

@ Mahesha999 Ja. –

Verwandte Themen