用于在文本文件中递增版本的 Powershell 脚本
Powershell script to increment version in a text file
我有一个文本文件,其中包含一些文本和文件结尾
"Version"="1.3.0"
我想增加内部版本号 "Version"="1.4.0"。
在同一个文件中,而不影响其他内容。
请在 powershell 中提供帮助。
我假设您可以将文件解析到与您在问题中提供的内容相似的程度。此外,我的示例缺少错误处理。
示例
$fileContents = '"Version"="1.4.0"'
$parts=$fileContents.Split('=')
$versionString = $parts[1].Replace('"','')
$version = [Version]$versionString
$newVersionString = (New-Object -TypeName 'System.Version' -ArgumentList @($version.Major, ($version.Minor+1), $version.Build)).ToString()
$fileContents.Replace($versionString,$newVersionString)
结果
"Version"="1.5.0"
非常感谢@Matt && @TravisEz13 的提示。在您的帮助下,这里是另一个工作版本。
$Verfile = "C:\Work\Example\versionfile.reg"
$fileContents = (Get-Content $Verfile | Select -Last 1)
$parts=$fileContents.Split('=')
$versionString = $parts[1].Replace('"','')
$version = [Version]$versionString
$newVersionString = (New-Object -TypeName 'System.Version' -ArgumentList @($version.Major, ($version.Minor+1), $version.Build)).ToString()
(gc $Verfile) -replace "$versionString", "$newVersionString" | sc $Verfile
我有一个文本文件,其中包含一些文本和文件结尾 "Version"="1.3.0"
我想增加内部版本号 "Version"="1.4.0"。 在同一个文件中,而不影响其他内容。
请在 powershell 中提供帮助。
我假设您可以将文件解析到与您在问题中提供的内容相似的程度。此外,我的示例缺少错误处理。
示例
$fileContents = '"Version"="1.4.0"'
$parts=$fileContents.Split('=')
$versionString = $parts[1].Replace('"','')
$version = [Version]$versionString
$newVersionString = (New-Object -TypeName 'System.Version' -ArgumentList @($version.Major, ($version.Minor+1), $version.Build)).ToString()
$fileContents.Replace($versionString,$newVersionString)
结果
"Version"="1.5.0"
非常感谢@Matt && @TravisEz13 的提示。在您的帮助下,这里是另一个工作版本。
$Verfile = "C:\Work\Example\versionfile.reg"
$fileContents = (Get-Content $Verfile | Select -Last 1)
$parts=$fileContents.Split('=')
$versionString = $parts[1].Replace('"','')
$version = [Version]$versionString
$newVersionString = (New-Object -TypeName 'System.Version' -ArgumentList @($version.Major, ($version.Minor+1), $version.Build)).ToString()
(gc $Verfile) -replace "$versionString", "$newVersionString" | sc $Verfile