[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文本处理] 批处理如何从ini文本中查找出第一个/首个含有指定字符串的行并在其下插入一行内容?

本帖最后由 pcl_test 于 2016-9-8 11:06 编辑

文本查找替换
我想在1.ini中的第一个 [System] 后面插入一行,enabled=1,用批处理如何实现

1.ini 中可能会存在多个 [System]例
[System]
isture=0

[ini]
isenabled=1

[System]
ture=1

改后希望是这样
[System]
enabled=1
isture=0

[ini]
isenabled=1

[System]
ture=1
1

评分人数

享受批处理的神奇!!!

  1. mshta http://bathome.net/s/hta "type('1.ini').replace(/\[System\]/,'$&\r\nenabled=1')"
复制代码

TOP

批处理不能实现吗?
只是用mshta  打开了而已,没有实现保存!
享受批处理的神奇!!!

TOP

回复 2# pcl_test


   谢谢!
批处理不能实现吗?
只是用mshta  打开了而已,没有实现保存!
享受批处理的神奇!!!

TOP

你这INI根本不合法。
正常INI里不能存在两个相同的节点。
去学去写去用才有进步。安装python3代码存为xx.py 双击运行或右键用IDLE打开按F5运行

TOP

  1. #python ini 练习
  2. #2016年9月8日 00:10:54 codegay
  3. from configparser import ConfigParser
  4. ini = ConfigParser()
  5. f=ini.read("test.ini")
  6. ini.set("System",'enable',"1")
  7. ini.write(open("test.ini","w"))
复制代码
去学去写去用才有进步。安装python3代码存为xx.py 双击运行或右键用IDLE打开按F5运行

TOP

去学去写去用才有进步。安装python3代码存为xx.py 双击运行或右键用IDLE打开按F5运行

TOP

  1. sed -i ":T;$!{N;bT};s/\[System\]/&\r\nenabled=1/" 1.ini
复制代码

TOP

  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f "delims=" %%i in ('findstr /n .* 1.txt') do (
  4.     set "s=%%i" & set "s=!s:*:=!"
  5.     echo;!s!
  6.     if "!s!" == "[System]" if not defined a (set a=1&echo;enabled=1)
  7. )
  8. pause
复制代码

TOP

  1. gawk "1;{if($0~/^\[System]$/ && !a){a=1; print \"enabled=1\"}}" 1.txt
复制代码

TOP

返回列表