创建bat脚本

新建一个脚本文件 updateFileContent.bat

%关闭回显,设置延迟环境变量扩展%
@echo off&setlocal enabledelayedexpansionrem 计算调用的参数个数
for %%a in (%*) do set /a num+=1
if defined num (echo 调用了 %num% 个参数) else echo 没有调用任何参数set fileName=%1
set oldText=%2
set newText=%3rem 参数个数小于3个提示用户
if num lss 3 (goto :errArgsTip
) rem 参数个数大于等于4个设置featureText变量
if num geq 4 (set featureText=%4
)echo fileName=%fileName% oldText=%oldText% newText=%newText% if defined featureText (echo featureText=%featureText%)for /f "delims=" %%a in ('findstr /n .* %fileName%') do (set "str=%%a"rem 替换内容if defined featureText (rem 查找每行字符串是否包含指定的特征字符,只对包含特征字符的行替换文本echo !str!| findstr %featureText% >nul && (set "str=!str:%oldText%=%newText%!")) else (set "str=!str:%oldText%=%newText%!")rem 将添加了行号的文本写入临时文件echo !str! >>tmp.txt
)
for /f "tokens=1* delims=:" %%i in ('type tmp.txt') do (rem 按 : 分割每行字符串set "str=%%j"if "!str!"==" " (rem 写入源文件里的空行call echo.>>new_A.txt) else (rem 将字符串写入文本,每行会多一个空格,使用字符串的截取功能去掉末尾的一个空格echo !str:~0,-1!>>new_A.txt)
)rem 删除临时文件并将修改后的文件修改为源文件
del tmp.txt&move new_A.txt %fileName%goto :end:errArgsTipecho --------------------------------------------------------------------------------echo -- 请输入正确的参数:fileName oldText newText [featureText]echo -- fileName:待修改文件的文件名echo -- oldText:待修改的文本echo -- newText:替换后的文本echo -- featureText:待修改文本所在行的特性字符,用于定位修改文本所在的行,可选参数echo --------------------------------------------------------------------------------:endrem 执行完脚本要将num变量取消,以免影响下次执行set num=

测试

准备测试文件 test.txt

你好: chinatest=helloyear=hello

测试用例一

执行指令:

D:\bat>updateFileContent.bat test.txt hello word
调用了 3 个参数
fileName=test.txt oldText=hello newText=word
移动了         1 个文件。
D:\bat>

执行结果:

你好: chinatest=wordyear=word

测试用例二

执行指令:

D:\bat>updateFileContent.bat test.txt hello word year
调用了 4 个参数
fileName=test.txt oldText=hello newText=word
featureText=year
移动了         1 个文件。
D:\bat>

执行结果:

你好: chinatest=helloyear=word

参考文献:

批处理(bat)脚本语言—SET命令和变量使用
bat文件修改或替换文件内容

bat脚本修改文件内容相关推荐

  1. bat批量修改文件内容

    说明: 主要功能: 遍历某目录下所有文件,将制定的文字替换成目标文字. 使用步骤: 1.双击运行moreFileUpdate.bat批量修改目录下的所有文件. 编写注意点: 中文放入变量中需注意转为A ...

  2. bat 批量修改文件内容

    :::::批量修改文件内容.bat::::: @echo off :: 开启变量延迟扩展 setlocal EnableDelayedExpansion :: 输入开始 :inputFilePath ...

  3. bat批处理修改文件夹下文件名字

    bat批处理修改文件夹下文件名字 业务场景 有时候我们经常会遇到需要批量处理一些文本或者文件名称的问题,批量文本的处理可以使用notepad++ 里面的列编辑,或者批量替换字符串即可.假如有这样一个要 ...

  4. 批量修改文件内容(Python版)

    目录 前言 一.为什么选择 python 二.使用步骤 1.搜索 2.替换 3 整合 4 脚本使用 前言 接上文 批量修改文件内容 一.为什么选择 python 近年来 Python 的使用率越来越高 ...

  5. linux中vi修改文件内容,linux VI模式下批量修改文件内容

    1.         :s/vivian/sky/ 替换当前行第一个 vivian 为 sky :s/vivian/sky/g 替换当前行所有 vivian 为 sky 2.         :n,$ ...

  6. linux修改程序文件内容,linux 批量修改文件内容

    如果有批量修改文件内容的需求,可参考下面这些方法 1.批量查找某个目下文件的包含的内容,例如: #   grep -rn或l "要找查找的文本"  路径或文件 rn表示匹配查找字符 ...

  7. python修改文件内容_python批量修改文件夹及其子文件夹下的文件内容

    前言:前几天我看一位同学要修改很多文件中的数据,该文件数据很规律,一行只有三个数,需要将每行最后一个数字改为负数,但文件有上千个,分布在每个文件夹下面以及它的多级子文件夹下,看他用excel手动改数据 ...

  8. unix下以十六进制形式修改文件内容

    本帖子转自:echoaix  嘟嘟之家  http://blog.chinaunix.net/u/10212/showart.php?id=88834 向echoaix这位sybase 高手表示感谢. ...

  9. 用python修改文件内容修改txt内容的3种方法

    用python修改文件内容修改txt内容的3种方法 方法一.修改原文件方式 def updateFile(file,old_str,new_str):"""替换文件中的字 ...

  10. python修改文件内容,不需要read,write多个动作。

    python  要修改文件内容,常用 是先read,后write , 再 rename,很不爽. 比如:需要 把       yuv_dir ="../HD/"   # " ...

最新文章

  1. SVN禁止提交部分文件
  2. 使用Jmeter 创建Post请求
  3. 再见,余!额!宝!!!
  4. ODrive踩坑(一)windows下使用环境的搭建,odrivetool及USB驱动的安装
  5. 敏捷领导力的反面模式
  6. javaSE基础之字符串
  7. STM32外设驱动总结(公司项目需要)
  8. webgame《天龙诀》完整网页游戏源码
  9. HCIE 数通资料下载 肖哥视频下载
  10. Windows副本不是正版
  11. java 之DelayQueue实际运用示例
  12. html 图片加载 占位,css实现图片未加载完成时占位显示
  13. 汉诺塔python创新设计_递归经典案例汉诺塔 python实现
  14. SIwave仿真手册——软件基础(一)
  15. LSM6DS3(六轴传感器)STM32驱动及6D功能实现
  16. 使用视频监控摄像头的语音对讲功能,在视频平台,配置符合GB28181协议国标视频对讲
  17. RK系列SDK -- dummy codec虚拟声卡注册
  18. 我在华为的一次面试经历
  19. DataSet数据集
  20. 技术人攻略访谈三十九-HTML5社区田爱娜:女神哪有天生,坚守就是一切

热门文章

  1. 通过二进制逻辑运算解题
  2. 固态硬盘系统经常假死_电脑更换固态硬盘后仍然出现卡顿、假死问题如何解决...
  3. 第8章 HDFS HA高可用
  4. html好看的详情页面设计,40多个漂亮的网页表单设计实例
  5. Android Beam 文件传输失败分析与解决
  6. 资源池、虚拟机、集群的关系
  7. 计算机前沿科学与发展,《数据与计算发展前沿》正式创刊
  8. 数字电路基础:如何提高电路工作频率
  9. 《微表情心理学》总结
  10. Excel Spearman相关系数