我可以使用 .bat 文件重命名目录中的所有文件夹吗?

我可以使用 .bat 文件重命名目录中的所有文件夹吗?

有人能帮我弄清楚如何剥离或删除目录中所有文件夹名称的一部分吗?我正在尝试删除这个 7 个字符的字符串“SSA RI”(包括中间和尾随空格)。我只想从文件夹名称中包含此字符串“SSA RI”的任何文件夹名称中删除它。如果文件夹名称中不包含该字符串,则不应更改文件夹名称。

答案1

要重命名以删除此前缀开头的所有目录和子目录SSA RI,可以运行以下 PowerShell 脚本:

Get-ChildItem -Directory -Recurse | foreach {
    $newName = $_.Name
    if ($newName -like "SSA RI *") {
        $newName = $newName.Substring(7)
    }
    if ($newName -ne $_.Name) {
        Rename-Item -Path $_.FullName -NewName $newName
    }
}

如果您想SSA RI从文件夹名称中删除它,即使它出现在名称中间,您也可以使用:

Get-ChildItem -Directory -Recurse | foreach {
    $newName = $_.Name -replace "SSA RI ", ""
    if ($newName -ne $_.Name) {
        Rename-Item -Path $_.FullName -NewName $newName
    }
}

相关内容