[英]How to extract the version from the name of a NuGet package file using PowerShell?
我有一个文件,其中包含 nuget package 的名称,例如rmp2.<version>.nupkg
。 我想单独处理<version>
部分。 我已经尝试了很多东西。 一个这样的片段如下:
Get-Content version.txt | ForEach-Object { $_.split("nupkg")[1]} | cut -f 2,3 -d 2
它不工作。
如果由于版本末尾的点而无法正常工作,请尝试以下操作:
$version = Get-Content version.txt | ForEach-Object { $_.split("nupkg")[1]}
$version.Substring(0,$version.Length-1)
或尝试使用 -split 而不是.split
(((Get-Content version.txt) -split('.nupkg')) -split('rmp2.'))[1]
使用以下正则表达式获取各种其他 package id 和版本。 例如
if ($file.Name -match '(?<=(?<id>.+))\.(?<version>((\d+\.\d+(\.\d+)?))(?<suffix>(-.*)?))\.nupkg')
{
$packageId = $Matches.id
$packageVersion = $Matches.version
# do your thing
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.