【问题标题】:I need first 3 digit number of version from AssemblyInfo.cs using powershell script我需要使用 powershell 脚本的 AssemblyInfo.cs 的前 3 位版本号
【发布时间】:2020-09-19 15:39:23
【问题描述】:

在我们的项目中,我们有 AssemblyInfo.cs

这是一些代码...

 [assembly: AssemblyVersion("1.5.26.0")]
 [assembly: AssemblyFileVersion("1.5.26.0")]

我想要的是版本的前三位数字。

我有一个 Powershell 脚本,它可以获取版本,但我只需要前三位

$assemblyInfoPath = "D:\PC- Downloads\AssemblyInfo.cs"

$regex = '^\[assembly: AssemblyVersion\("(.*?)"\)\]'
$assemblyInfo = Get-Content $assemblyInfoPath -Raw

  $version = [Regex]::Match(
    $assemblyInfo, 
    $regex,
    [System.Text.RegularExpressions.RegexOptions]::Multiline
).Groups[1].Value 

参考链接:Put Assembly Version from AssemblyInfo.cs in Web.config

有人知道我可以如何实现吗?

【问题讨论】:

  • 您可以将版本号转换为真实版本号[VERSION]"1.5.26.0"。现在您可以致电MajorMinorBuild。 ;-)
  • 你能举一些PowerShell的例子吗?

标签: string powershell variables .net-assembly


【解决方案1】:

嗯...我会尝试...假设您已将源字符串保存到变量$sourceString

$sourceString = '[assembly: AssemblyVersion("1.5.26.0")]'

您可以剪切不需要的所有内容并将结果转换为适当的 dot Net 版本类型:

[VERSION]$VersionString = $sourceString -replace '^.+((\d+\.){3}\d+).+', '$1'

现在您可以通过名称访问所有单个元素:

$VersionString.Major
$VersionString.Minor
$VersionString.Build
$VersionString.Revision

$VersionString

结果是这样的:

1
5
26
0

Major  Minor  Build  Revision
---- - ---- - ---- - --------
1      5      26     0

现在您可以根据需要重新加入他们

$DhartisNeed = '{0}.{1}.{2}' -f $VersionString.Major,$VersionString.Minor,$VersionString.Build
$DhartisNeed

结果是这样的:

1.5.26

【讨论】:

  • 我在脚本中得到了相同的结果,我需要的是我只需要三位数字,没有最后一个“0”,输出应该是这样的:“1.5.26”也不想放 $ sourceString = '[assembly: AssemblyVersion("1.5.26.0")]' 作为硬编码,版本应该自动从 AssemblyInfo.cs 文件中获取。
  • 我认为这很明显。您可以根据需要重新加入单个部分...我为您添加了一个示例。 ;-) 我的变量名只是示例。您可以根据自己的特殊需要更改所有内容。
  • 我有版本“1.06.04”,但是当我使用上述脚本获取版本时,它显示的是“1.6.4”。有什么想法吗?
  • AFAIK 前导零只是养眼。从技术角度来看,它们实际上并不重要。为什么你认为你需要它们?如果你真的需要它们,你需要用特殊的design 创建一个字符串。 ;-) ... 为什么不是“01.06.04”?
  • 这是我的事!如果您有任何想法,请告诉我
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-01-31
  • 2023-03-21
  • 1970-01-01
  • 2013-12-28
  • 2018-06-10
  • 2018-08-08
相关资源
最近更新 更多