gpt4 book ai didi

batch-file - 批处理文件以编辑 ini 文件中的行

转载 作者:行者123 更新时间:2023-12-05 00:37:46 27 4
gpt4 key购买 nike

我有一个自动生成的 ini 文件。

它的第二行总是:Version = W.XX.Y.ZZ
哪里W是主要版本号,XX是次要版本,Y是 Build 和 ZZ是修订版。

我需要打开该 ini 文件并使用批处理文件编辑该行,以便删除该版本中的内部版本号和修订号。因此,该行应该像这样结束:Version = W.XX
主编号将始终为一个字符,次编号将始终为两个,因此整个字符串的长度为 14 个字符(包括空格)。

我希望我能得到 LEFT 的字符串该行的 14 个字符并将该行替换为该字符串。

最佳答案

您要求的“LEFT”语法是使用可变子字符串扩展:%var:~,14%
以下代码将对包含字符串“Version”的每一行执行“LEFT 14”

setlocal enabledelayedexpansion
del output.ini
for /f "tokens=*" %%a in (input.ini) do (
set var=%%a
if not {!var!}=={!var:Version=!} set var=!var:~,14!
echo.!var! >> output.ini
)
endlocal

如果还有其他带有“Version”字样的行,您也可以修改循环以使用计数器。
setlocal enabledelayedexpansion
del output.ini
set counter=0
for /f "tokens=*" %%a in (input.ini) do (
set var=%%a
set /a counter=!counter!+1
if !counter! EQU 2 set var=!var:~,14!
echo.!var! >> output.ini
)
endlocal

请注意,在这两种情况下,如果您的文件包含特殊符号,如 |、< 或 >,您可能需要做更多的工作

关于batch-file - 批处理文件以编辑 ini 文件中的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6578896/

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