OK najpierw dzięki nex84 za udzielenie odpowiedzi na moje ostatnie pytanie i na wszystkie te, które dały wkład, również na ten link https://superuser.com/a/1051727/569550 ...
Mam teraz nowe pytanie, ale wiąże się ono z tym samym kodem, co ten w linku.
Stworzyłem skrypt, który usunie tekst z nazwy pliku i zastąpi go nowym tekstem lub spacją.
Zostało to stwierdzone w ostatnim pytaniu po linku, który podałem. Dodałem dane wejściowe użytkownika, aby użytkownik mógł wpisać, co tekst ma zostać usunięty i co chce dodać.
Dostaję poprawną część usuwania, ale mam problem z dodaniem nowego tekstu do nazwy pliku. Jakieś sugestie...
Poniższy kod działa dla usuniętego, ale gdy zmiana nazwy pojawia się w skrypcie, dodaje „$ Zmień nazwę” do nazwy pliku zamiast tego, co wprowadza użytkownik.
Przykład: jeśli użytkownik usunął „-Layout1”, ale dodaje „-Model” do nazwy pliku, otrzymujemy:
BLABLA-Layout1.pdf ==> BLABLA$Replace.pdf
Kod:
CD C:\TempPDF
$Filter = Read-Host -Prompt 'Input Text To Be Removed'
$Rename = Read-Host -Prompt 'Input Text To Be Added'
Write-Host "You input server '$Filter' and '$Rename'"
Get-ChildItem -Filter "*$Filter*" -Recurse | Rename-Item -NewName {$_.name -replace "$Filter",'$Rename' }
źródło