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

[其他] 批处理如何查找和替换文本文档里某个字符?

公司目前想实现2台文件服务器资料的同步,文件服务器a的地址为:\\10.87.0.138,文件服务器b的地址为\\10.87.0.238,
目前想将最常用的资料从138上copy一份到238上(并不是全部拷贝,只拷贝最常用的),且路径要保持一致,分析了下大致应该分为2步去进行,
第一步,去138服务器上存放资料路径的文本文件1.txt中查找138,用238替换生成新路径。
第二步,拷贝对应的138资料到238
\\10.87.0.138\pefile\a.txt拷贝到\\10.87.0.238\pefile\a.txt
\\10.87.0.138\pefile\b.txt拷贝到\\10.87.0.238\pefile\b.txt
\\10.87.0.138\pefile\c.txt拷贝到\\10.87.0.238\pefile\c.txt


目前138服务器上有个文本文档
如1.txt,内容是记录138服务器上资料的访问地址:
\\10.87.0.138\pefile\a.txt
\\10.87.0.138\pefile\b.txt
\\10.87.0.138\pefile\c.txt
(下面还有很多类似的地址省略)

第一问题:如何用bat查找1.txt内的关键字"138"并用"238"去替代?
替代后生成以下文档:
\\10.87.0.238\pefile\a.txt
\\10.87.0.238\pefile\b.txt
\\10.87.0.238\pefile\c.txt

第二个问题:替代完后能否实现拷贝原路径的资料(或者在查找替换的过程中就实现copy这步操作呢)
\\10.87.0.138\pefile\a.txt 拷贝到\\10.87.0.238\pefile\a.txt
\\10.87.0.138\pefile\b.txt 拷贝到\\10.87.0.238\pefile\b.txt
\\10.87.0.138\pefile\c.txt 拷贝到\\10.87.0.238\pefile\c.txt

高手们指点指点!thank you!

第一个问题
  1. @echo off&setlocal enabledelayedexpansion
  2. for /f "delims=" %%1 in ('type "1.txt"')do set a=%%1&set v=!a:138=238!&echo !v!>>new.txt
  3. del 1.txt&ren new.txt 1.txt
复制代码
第二个问题没看懂

TOP

2# sky02


第2个問題就是實現拷貝源路徑的資料\\10.87.0.138\pefile\a.txt到目的路徑\\10.87.0.238\pefile\a.txt.關鍵是怎麼去一行行對應拷貝,如1.txt裡的每行對應到新生成的new.txt裡的每行。高手再指點指點,或者有什麼其它方法不?

TOP

返回列表