我一直在尝试编写一个脚本来删除文件名的末尾部分,并将其替换为版本号。我曾尝试修剪和拆分,但由于额外的点和正则表达式不好,即时通讯有问题。拆分并将文本/数字添加到文件名
这些文件的例子:
Filename.Api.sow.0.1.1856.nupkg
something.Customer.Web.0.1.1736.nupkg
我想删除这些文件名0.1.18xx
和变量添加一个版本号。这将是像1.0.1234.1233
(major.minor.build.revision)
所以最终的结果应该是:
Filename.Api.sow.1.0.1234.1233.nupkg
something.Customer.Web.1.0.112.342.nupkg
这是我尽量拆分,然后重命名。但它不起作用。
$files = Get-ChildItem -Recurse | where {! $_.PSIsContainer}
foreach ($file in $files)
{
$name,$version = $file.Name.Split('[0-9]',2)
Rename-Item -NewName "$name$version" "$name".$myvariableforbuild
}
你可以删除你的地方,如果你在GCI – Esperento57
指定-file @ Esperento57他还使用'PsIsContainer'在他的代码,因此他极有可能使用PowerShell的V2,其中'-file '开关丢失。所以我可能*无法删除在这里。 –
他没有指定他的版本。也许他不知道 - 文件太;) – Esperento57