我必须更改大约 600 个目录的名称以符合业务命名标准,事实证明这非常复杂。
我将以音乐目录格式呈现问题,因为它更易于解释和关联。
如果我想重命名所有拥有它的音乐目录,它将在结尾而不是开头显示介词
原来的
披头士
期望的输出
披头士乐队
我有以下目录作为示例
Mode LastWriteTime Length Name
---- ------------- ------ ----
d---- 28/08/2016 3:51 PM Alabama Shakes
d---- 28/08/2016 3:51 PM Cat Stevens
d---- 28/08/2016 3:41 PM The Beatles
d---- 28/08/2016 3:42 PM The Brian Jonestown Massacre
d---- 28/08/2016 3:42 PM The Rolling Stones
d---- 28/08/2016 3:43 PM Them
d---- 28/08/2016 3:43 PM Them Rotten Vultures
d---- 28/08/2016 3:42 PM Van Morrison
我设法写了一些东西来将结果过滤到我想要重命名的结果
Get-ChildItem -Filter "THE *"
但是我不知道如何使用逻辑来重命名它们。我确定它将是递归的,它将使用该Rename-Item
函数。
但是我尝试了以下
Get-ChildItem -Filter "The *" -Recurse |
Rename-Item -NewName { $_.name -replace 'The ','' } |
Rename-Item -NewName { $_.name + " ,The" }
并得到以下结果
Mode LastWriteTime Length Name
---- ------------- ------ ----
d---- 28/08/2016 3:51 PM Alabama Shakes
d---- 28/08/2016 3:41 PM Beatles
d---- 28/08/2016 3:42 PM Brian Jonestown Massacre
d---- 28/08/2016 3:51 PM Cat Stevens
d---- 28/08/2016 3:42 PM Rolling Stones
d---- 28/08/2016 3:43 PM Them
d---- 28/08/2016 3:43 PM Them Rotten Vultures
d---- 28/08/2016 3:42 PM Van Morrison
任何帮助将不胜感激
相关问题子项也会检测文件吗?因为只有目录需要重命名