我有以下格式的文件: 从400或Z400开始
我需要重命名如下: 以 Z100
开头目前我有以下powershell功能。但它添加Z作为前缀。如何更改代码以便在必要时添加Z并将其更改为400?
function renameFiles{
echo " Start Rename Files"
get-childitem -path $mapfolder |
Where-Object {$_.extension -eq ".ditamap"} |
foreach-object {
echo " Renaming: $_ --> Z$_"
ren "$mapfolder\$_" "$mapfolder\Z$_"
}
}
答案 0 :(得分:1)
请勿使用echo
并查看使用if
或switch
等内容来处理各种情况:
function Rename-DitmapFile
{
get-childitem -path $mapfolder -Filter *.ditmap |
foreach-object {
switch ($_)
{
{$_.name.startswith('4')} {Rename-Item -Path $_.FullName -NewName ($_.Name -replace '4','Z1')}
{$_.name.startswith('Z4')} {Rename-Item -Path $_.FullName -NewName ($_.Name -replace 'Z4','Z1')}
}
}
}