我需要帮助批量重命名一些文件名。我有大约 300 个目录。所有文件都是 Word.docx
文件,重命名后仍需要保留 Word 文件。
每个文件夹中都有 1 到 20 个文件(绝不超过 26 个)。我需要按某种顺序排列它们(最好按其当前名称的字母顺序排列),然后重命名它们以遵循以下模式:
Example A.docx
Example B.docx
Example C.docx
etc.
我不能使用外部软件,只能使用终端。
答案1
下面是一个可执行您所要求操作的 PowerShell 脚本:
$letters = [char[]]([char]'A'..[char]'Z')
$directoryName = $null
$count = 0
Get-ChildItem -Path "your folder path" -File -Recurse |
ForEach-Object {
if ($directoryName -eq $null -or $directoryName -ne $_.DirectoryName) {
$directoryName = $_.DirectoryName
$count = 0
}
$newname = "Example " + $letters[$count++] + ".docx"
Rename-Item $_.fullname $newname
}
请先备份。