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

[文本处理] 搜索特定名称文件,如果该文件含有特定值则输出所在目录,并替换该值

本帖最后由 g006 于 2019-9-30 14:27 编辑

新人近期在研究bat,想做一个脚本实现如下功能:

已知在电脑上的多个位置存都在文件名称为set-client-env.bat
文件内容大概如下:
SET EAS_HOME=C:\Kingdee\eas
SET JAVA_HOME=C:\Kingdee\eas\clientjdk
SET UPDATE_SERVER=192.168.10.10:6888
SET EAS_SERVER=tcp://192.168.10.10:11034
SET JVM_INITIAL_HEAPSIZE=64
SET JVM_MAX_HEAPSIZE=512
SET ONDEMAND_UPDATE=false
SET ISSTART_LOADER=false
SET ISMULTI_LOADER=false
SET ENABLE_CDN=false
SET preheatClient=false

如上所示,现需实现的功能如下:
1.在电脑所有盘符内查找并获取所有文件名为set-client-env.bat的文件里的【SET EAS_HOME=】后面的完整路径及【SET UPDATE_SERVER=】后面的IP或域名地址,【:6888】这部分不需要。
2.如果该文件里有【192.168.10.10】或者【test.eas.com】这个参数,则自动把【192.168.10.10】或者【test.eas.com】替换为【a.erp.com】,并返回该文件中【SET EAS_HOME=】后面的路径,把该路径设置为变量EAS_HOME

以上,本人查了不少资料,奈何本人水平有限,特来请教大神该怎么写,先谢过~
bat新手

先试试以下哪个代码能找到 set-client-env.bat 这个文件:
Batcher 发表于 2019-10-3 08:26

非常感谢您提供的教程帖,我会专门参照教程学习一下的,谢谢
bat新手

TOP

terse 发表于 2019-10-4 18:54



        谢谢详细的回复,我测试了一下,这个脚本实现了查找包含特定内容的指定文件。
但是实际替换的是EAS_HOME后面的路径这个参数,而不是替换文件中的特定IP或域名为a.erp.com。
不过这段代码也给我提供了一个很好的参考和帮助,我再仔细研究一下,非常感谢您。
bat新手

TOP

这个文件起啥作用?数据库地址?意思你们单位不止一个金蝶服务器?
窄口牛 发表于 2019-10-4 19:13



    是的,金蝶的EAS服务器地址,我们内部有非常多的测试环境。
bat新手

TOP

返回列表