Eu estou tentando escrever um script PowerShell que vá para pasta específica que tem várias pastas contendo o arquivo do Excel. O nome do arquivo é como exemplo 1_RIM_Reports_201510.xlsx 2_Rim_Reports_September.xlsx
Agora eu quero mudar substituir a palavra RIM com NIR como posso fazer isso para vários arquivos.
1_NIR_Reports_201510.xlsx 2_NIR_Reports_September.xlsx
Get-ChildItem $directory -Recurse |
Rename-Item { $_.name -replace "*RIM*.xlsx", "*NIR*.xlsx" }
Respostas:
1 para resposta № 1Se sua string sempre tiver o sublinhado _
antes e depois você pode simplesmente usar isto:
Get-ChildItem $Directory -Recurse |
Foreach-Object { Rename-Item $_.FullName ($_.FullName -replace "_RIN_","_NIR_")}
Caso contrário, você precisa usar a expressão regular, se esse for o caso, informe-nos