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

[文本处理] [已解决]批处理用(a.txt提供内容)替换文本(b.txt)里面指定内容

问题完美解决:
  1. @echo off
  2. del 1.txt 2.>nul
  3. set /p M=<lnk路径.txt
  4. for /f "tokens=*" %%i in (快捷方式-模板.txt) do call :begin "%%i"
  5. start notepad 1.txt
  6. goto :eof
  7. :begin
  8. set var=%~1
  9. if defined var call set var=%%var:lnk路径=%M%%%
  10. if defined var echo %var%>>1.txt
复制代码

********************************************************
原来的问题:

1.现有批处理(替换文本指定内容.bat)(待修改)代码:
  1. @echo off
  2. del 1.txt
  3. set /p M=<lnk路径.txt
  4. for /f "tokens=*" %%i in (快捷方式-模板.txt) do call :begin ^"%%i^"
  5. start notepad 1.txt
  6. goto :eof
  7. :begin
  8. set var=%~1
  9. if defined var set var=%var:lnk路径=%%M%% %
  10. if defined var echo %var% >> 1.txt
复制代码
2.目的是:用 “lnk路径.txt” 里面的内容 去替换  “快捷方式-模板.txt” 里面的 lnk路径
3.快捷方式-模板.txt内容是:
  1. Set WshShell = WScript.CreateObject("WScript.Shell")
  2. set oShellLink = WshShell.CreateShortcut("lnk路径")
复制代码
4.lnk路径.txt里面的内容(变化的,可能有空格):
D:\桌面\Desktop\Dism++.lnk
***************************************************
5.运行批处理以后,1.txt内容:
  1. Set WshShell = WScript.CreateObject("WScript.Shell")D:\桌面\Desktop\Dism++.lnk
  2. set oShellLink = WshShell.CreateShortcut("")D:\桌面\Desktop\Dism++.lnk
复制代码
6.期待结果是:
  1. Set WshShell = WScript.CreateObject("WScript.Shell")
  2. set oShellLink = WshShell.CreateShortcut("D:\桌面\Desktop\Dism++.lnk")
复制代码
我是小白,希望老师多多帮助

  1. @echo off
  2. del 1.txt 2.>nul
  3. set /p M=<lnk路径.txt
  4. for /f "tokens=*" %%i in (快捷方式-模板.txt) do call :begin "%%i"
  5. start notepad 1.txt
  6. goto :eof
  7. :begin
  8. set var=%~1
  9. if defined var call set var=%%var:lnk路径=%M%%%
  10. if defined var echo %var%>>1.txt
复制代码
1

评分人数

TOP

terse 发表于 2022-12-17 20:36



    我试一试先,谢谢
我是小白,希望老师多多帮助

TOP

terse 发表于 2022-12-17 20:36



    成功了,再次感谢
我是小白,希望老师多多帮助

TOP

返回列表