PowerShell Rename replace: методы переименования и замены файлов

Фраза «замена переименования PowerShell» относится к выполнению операций переименования и замены файлов с помощью PowerShell. Я предоставлю вам несколько методов вместе с примерами кода. Вот они:

Метод 1: использование командлета Rename-Itemс шаблоном регулярного выражения:

Get-ChildItem -Path "C:\Path\To\Files" | ForEach-Object {
    $newName = $_.Name -replace "oldText", "newText"
    Rename-Item -Path $_.FullName -NewName $newName
}

Метод 2: использование командлета Get-ChildItemс параметром -Filterи командлета Rename-Item:

$files = Get-ChildItem -Path "C:\Path\To\Files" -Filter "oldText*"
foreach ($file in $files) {
    $newName = $file.Name -replace "oldText", "newText"
    Rename-Item -Path $file.FullName -NewName $newName
}

Метод 3: использование командлета Get-ChildItem, цикла foreachи командлета Rename-Itemс - оператор замены:

$files = Get-ChildItem -Path "C:\Path\To\Files"
foreach ($file in $files) {
    $newName = $file.Name -replace "oldText", "newText"
    Rename-Item -Path $file.FullName -NewName $newName
}

Метод 4: использование командлета Get-ChildItem, цикла foreachи командлета Rename-Itemс - оператор replaceи параметр -LiteralPath:

$files = Get-ChildItem -Path "C:\Path\To\Files"
foreach ($file in $files) {
    $newName = $file.Name -replace "oldText", "newText"
    Rename-Item -LiteralPath $file.FullName -NewName $newName
}

Метод 5: использование командлета Get-ChildItem, цикла foreachи командлета Move-Itemс - Параметр назначения:

$files = Get-ChildItem -Path "C:\Path\To\Files" -Filter "oldText*"
foreach ($file in $files) {
    $newName = $file.Name -replace "oldText", "newText"
    $destination = Join-Path -Path $file.Directory.FullName -ChildPath $newName
    Move-Item -Path $file.FullName -Destination $destination
}