gpt4 book ai didi

powershell - 文本文件中的增量版本

转载 作者:行者123 更新时间:2023-12-04 03:03:56 25 4
gpt4 key购买 nike

我有一个文本文件,其中仅包含一行,其中包含我的应用程序的版本号。一个例子是 1.0.0.1。我想增加内部版本号。使用我的示例,我将在同一个文本文件中获得输出 1.0.0.2。

如何使用 PowerShell 执行此操作?

最佳答案

这可能会结束,但它显示了类型 [version] 的使用这将节省进行字符串操作的需要。

$file = "C:\temp\File.txt"
$fileVersion = [version](Get-Content $file | Select -First 1)
$newVersion = "{0}.{1}.{2}.{3}" -f $fileVersion.Major, $fileVersion.Minor, $fileVersion.Build, ($fileVersion.Revision + 1)
$newVersion | Set-Content $file

此后的文件内容将包含 1.0.0.2 .关于使用 [version] 的不幸部分是属性是只读的,所以你不能就地编辑数字。我们使用格式运算符来重建版本,同时增加 Revision由一个。

如果文件中有一些空白或其他隐藏行,我们确保我们只使用 Select -First 1 获得第一行。 .

几种基于字符串操作的解决方案之一是将内容拆分为一个数组,然后在进行更改后重建它。

$file = "C:\temp\File.txt"
$fileVersion = (Get-Content $file | Select -First 1).Split(".")
$fileVersion[3] = [int]$fileVersion[3] + 1
$fileVersion -join "." | Set-Content $file

按其周期分割线。然后最后一个元素(第三个)包含您要增加的数字。它是一个字符串,所以我们需要将它转换为 [int]所以我们得到一个算术运算而不是字符串连接。然后我们重新加入 -join .

关于powershell - 文本文件中的增量版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30195025/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com