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

[已解决]批处理调用sed替换为何失败?

本帖最后由 wal516 于 2011-5-30 19:57 编辑
  1. Greys.Anatomy.S07*24*实习医生格蕾丝*#*Grey's.Anatomy.7x
  2. V.2009.S02*12*V星入侵*#*V.2009.2x
  3. The.Event.S01*24*惊世*#*The.Event.1x
  4. Chaos.S01*4*混沌特工*#*Chaos.1x
  5. setlocal ENABLEDELAYEDEXPANSION
  6. for /f "tokens=1,2,3,4,5 delims=*" %%a in (%~nx0) do (
  7.                          IF "%%d"=="#" (
  8.                                                       set dymz=%%a
  9.                                                        set /a num=%%b+1
  10.                                                       set num1=%%b
  11.                                                        set num2=0!num!
  12.                                                      set xzhddy=%%c
  13.                                                      set dymz2=%%e
  14.                                                      call :dy
  15.                                                        )
  16. )
  17. goto :eof
  18. :dy
  19. if "%dymz%"=="Greys.Anatomy.S07" sed -i "s/%dymz%*%num1%/%dymz%*%num%/" %~nx0
  20. goto :eof
复制代码
这个批中,哪里错了,为什么不能替换?

而把上述代码中if句改成如下:
  1. if "%dymz%"=="Greys.Anatomy.S07" sed -i "s/*%num1%/*%num%/" %~nx0
复制代码
却又都替换了?
1

评分人数

    • batman: 感谢给帖子标题标注[已解决]字样PB + 2

为什么高手都不来呢?

TOP

本帖最后由 batman 于 2011-5-26 09:33 编辑

*是数量符,表示匹配前面的表达式0次或多次,如要变为普通字符用\*
***共同提高***

TOP

返回列表