Board logo

标题: 如何用变量替换文件中的指定字符串 [打印本页]

作者: fatbig     时间: 2008-9-22 16:39    标题: 如何用变量替换文件中的指定字符串

作了一个替换程序,把全路径换成当前路径

程序如下:

@echo off & SetLocal EnableDelayedExpansion

dir /s /b *.sql  > all_sql.conf
set cdir=%cd%
for /f "tokens=1* delims=:" %%a in ('findstr /n .* all_sql.conf') do (
    set string=%%b
    echo\"!string!"|findstr /c:%%cdir%% >nul && (
        set string=!string:"%cdir%"=.!
        echo\!string!
    ) || (echo\!string!)
)
echo %cdir%

可惜死活不转。

请高手指点一二!!
作者: HAT     时间: 2008-9-22 20:40
CODE:  [Copy to clipboard]
@echo off
setlocal enabledelayedexpansion
for /f "delims=" %%a in ('dir /s /b *.sql') do (
  set str=%%a
  set str=!str:%cd%=.!
  echo !str!
)

作者: fatbig     时间: 2008-9-24 13:07    标题: 多谢回复

不过在本机不能运行,不知道怎么回事。

我这里根目录里带有空格,所以一直无法对应。
作者: HAT     时间: 2008-9-24 13:27
代码保存为test.bat,双击运行,把完整结果贴出来看看。
CODE:  [Copy to clipboard]
setlocal enabledelayedexpansion
for /f "delims=" %%a in ('dir /s /b *.sql') do (
  set str=%%a
  set str=!str:%cd%=.!
  echo !str!
)
pause





欢迎光临 中国DOS联盟论坛 (http://cndos.fam.cx/forum/) Powered by Discuz! 2.5