如何使用bat自动更改ini文件的某一行?

如图,现在需要设置计划任务,需要写一个批处理文件,实现对图上时间的修改,即时间修改为当前日期,各位大佬,如何实现?
图片说明

0

2个回答

直接修改比较不太好修改,但是可以写一个小程序修改,用bat调用它。

采纳本回答,并且把你的ini传网盘,贴出地址,可以帮你用C#写一个。

0

可以使用截取子串的方法和%date%、%time%两个内置变量实现。%str:~0,2%表示%str%从位置0开始,长度为2的子串。

@ECHO off
SETLOCAL EnableExtensions EnableDelayedExpansion
SET "INTEXTFILE=test.txt"
SET "OUTTEXTFILE=test_out.txt"

FOR /F "delims=" %%A IN ('TYPE "%INTEXTFILE%"') DO (
    SET "string=%%A"

    IF "!string:~0,11!" == "datetimeTxt" (
        ECHO datetimeTxt=%date:~0,4%-%date:~5,2%-%date:~8,2% %time:~0,2%:%time:~3,2%:%time:~6,2% >> "%OUTTEXTFILE%"
    ) ELSE (
        ECHO !string!>>"%OUTTEXTFILE%"
    )
)

ENDLOCAL

例子来源:
https://stackoverflow.com/questions/5273937/how-to-replace-substrings-in-windows-batch-file

批处理功能非常弱,还是用PowerShell的好。目前微软还提供支持的操作系统都支持PowerShell。

0
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
修改ini文件的批处理
用VBS更简单: vbs代码: On Error Resume Next Dim Fso,TxtFl,Str Set Fso = CreateObject("Scripting.FileSystemObject") Set TxtFl = Fso.OpenTextFile ("c:/config.ini",1) Str = Replace ( TxtFl.ReadAll,"url=http://baidu.com","url=http://google.com") Set TxtFl =
C#如何读取ini文件,并读取某一行的某个指定内容(使用split方法)
需求: 1、读取Config.ini文件 2、将里面的Address/Port=0xfed30328 这一行的0xfed30328取出来 这是Config.ini文件的具体内容: 说明: 1、首先ini 文件是Initialization File的缩写,即初始化文件,是windows的系统配置文件所采用的存储格式。 2、由于涉及到具体取某一行的具体内容,所以这里我们要用到Stri...
创建、修改、添加INI文件
可以对ini文件进行创建、修改、添加(vb源码)
Windows批处理 - 给自己写个库(3. INI文件的读取)
在写bat时,经常会碰到需要把参数和代码逻辑分开的需求,以方便对程序进行调试和设置,在程序开头统一声明变量就是为了这样的效果。如果进一步考虑,我希望我的设置和我的程序完全分开,那就需要用到配置文件了。对于为bat程序使用配置文件,txt肯定是最合适的,毕竟一般写bat程序就是在txt中写好再修改后缀名。常用的配置文件“.ini”和“.cfg”大家一定不会陌生,这两种文件的后缀分别是单词“Initia
bat批处理笔记——修改指定类型文件内指定内容
/*批处理——修改文件内指定内容*/ @echo off echo.&set /p strtemp3= 请输入要修改的文件类型: echo.&set /p strtemp2= 请输入要修改的文件内容: echo.&set /p strtemp1= 请输入要修改后的文件内容: for /f "delims=" %%i in ('dir /s/b *.%strtemp3%') do (
BAT 读取ini配置文件方法
ini文件实例。bat去读取ini文件时,我们假设:文件只有一个section,而且section的头在第一行,这间不会有空格。这们我们可以在读取时先掠过第一行,直接读取数。config.ini文件内容如下:[Common]ITEM1=ITEM_1ITEM2=ITEM_2ITEM3=ITEM_3读取ini文件我们写成一个BAT文件,这样在其它BAT中都可以调
用批处理删除txt中指定的行和替换指定的行,以及添加指定的行
在上面的op3.txt中,删除红色框框所在的行,替换绿色框框所在的行,在ENDSEC后添加两行(如紫色框所示)。 即删除第7行到第12行,以及第21行到第22行,   替换第15行的10062   替换第16行的AcDbEntity1 添加0 添加EOF ------------------------------------------------------------------
删除INI文件某个字段或者键值
假设D盘下面有 叫  test.ini文件,内容如下: [section1] name1=value1 [section2] neame2=value2   如果我们想删除  name1=value1 这一行数据,那么这样就可以了 ::WritePrivateProfileString("section1","name1",NULL,"D:\\
BAT取读文本文件中指定的行
Usage:&echo/Call ReadLine2 ^<file^> ^<linenum^> example:Call ReadLine2 aa.txt 5 7 11 will read 5 7 11 line echo/if ^<linenum^> is none,this program will read the file
批处理读取ini
ini文件读取 使用方法:       inifile iniFilePath [section] [item]                        例子:                                                                 inifile c:\boot.ini