找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 10773|回复: 2

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

[复制链接]
发表于 2011-5-21 18:08:43 | 显示全部楼层 |阅读模式
本帖最后由 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
复制代码
却又都替换了?

评分

参与人数 1PB +2 收起 理由
batman + 2 感谢给帖子标题标注[已解决]字样

查看全部评分

 楼主| 发表于 2011-5-26 08:22:45 | 显示全部楼层
为什么高手都不来呢?
发表于 2011-5-26 08:32:41 | 显示全部楼层
本帖最后由 batman 于 2011-5-26 09:33 编辑

*是数量符,表示匹配前面的表达式0次或多次,如要变为普通字符用\*
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-17 06:30 , Processed in 0.023711 second(s), 12 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表