假定在文件夹中你有很多脚本文件(或图片、日志等等),并且你想要将它们全部重命名。得到的新文件名应该具备如一个前缀接一个数字。
这里将告诉你怎么去实现。
例子,将重命名你指定的文件夹内所有扩展名为.ps1的Powershell/ target=_blank class=infotextkey>shell脚本。
新的名字将成为powershellscriptX.ps1,这里的“X”是一个递增数字。
注意:脚本默认还没有真正开始重命名。
请特别小心要去掉它的-Whatif参数才真正的重命名文件。
假设录入的变量或输入了一个错误的目录路径,这时脚本会错误将数以千计的文件重命名。
例子:
$Path = 'c:temp'
$Filter = '*.ps1'
$Prefix = 'powershellscript'
$Counter = 1
Get-ChildItem -Path $Path -Filter $Filter -Recurse |
Rename-Item -NewName {
$extension = [System.IO.Path]::GetExtension($_.Name)
'{0}{1}.{2}' -f $Prefix, $script:Counter, $extension
$script:Counter++
} -WhatIf
备注:
常见字符串处理方法,重点掌握'{0}{1}.{2}' -f 用法。