Ich bin auf der Suche nach einer Möglichkeit, mehrere Sonderzeichen aus Dateinamen über ein Powershell-Skript zu entfernen.PowerShell Entfernen von Sonderzeichen aus Dateinamen
Meine Dateinamen wie folgt aussehen:
[Bericht] _first_day_of_month_01_ (generated_by_powershell) _ [repnbr1] .txt
ich die [] und alles zwischen ihnen, die() und alles, was über das Entfernen rätselhaft wurden zwischen denen und dem Entfernen aller _ ist auch, mit dem gewünschten Ergebnis ein Dateiname ist, der wie folgt aussieht:
ersten Tag des Monats 01.txt
bis jetzt habe ich die unten Lösung ohne Erfolg versucht haben, . Ich habe jeden von diesen aus dem Verzeichnis ausgeführt, in dem sich die Dateien befinden.
Get-ChildItem -Path .\ -Filter *.mkv | %{
$Name = $_.Name
$NewName = $Name -Replace "(\s*)\(.*\)",''
$NewName2 = $NewName -Replace "[\s*]\[.*\]",''
$NewName3 = $NewName2 -Replace "_",' '
Rename-Item -Path $_ -NewName $NewName3
}
Da es nicht einmal arbeiten, wenn ich versuche, und wie dies zu einer Zeit, einen Satz tun:
Get-ChildItem -Path .\ -Filter *.mkv | %{
$Name = $_.Name
$NewName = $Name -Replace "(\s*)\(.*\)",''
Rename-Item -Path $_ -NewName $NewName
}
Ich nehme an, es ist ein inhärenter Fehler in der Art, wie ich diese Aufgabe zu erfüllen versuchen . Davon abgesehen würde ich lieber das Cmdlet Rename-Item verwenden, anstatt eine Move-Item-Lösung zu verwenden.
Danke. Ich habe versucht, eine ähnliche Lösung mit begrenztem Erfolg, aber das hat den Trick 100% !! Vielen Dank! – GreatMagusKyros