批处理文件 - 在文件名为substring的文件中查找字符串并替换它

时间:2015-10-18 07:30:27

标签: batch-file

我想问你,我该怎么做: 我在文件夹中有三个文件car.txtbus.txtplane.txt。文件car.txt包含一些带有字符串的文字,例如test="in_car“我知道,我发现带有前缀”in_“的字+来自文件名”car“的字,如果我找到它,我想用“hello”替换它。对于文件bus.txtplane.txt做同样的事情,找到单词in_bus并将其替换为{{1我知道前缀“hello”只在这个地方。 拜托,你能帮帮我吗?

我尝试这样的事情:

in_

但它不起作用,我不知道,如何将其保存到当前文件(将其替换为文件)

2 个答案:

答案 0 :(得分:1)

你忘记了另一个for(阅读文件)(尽管你显然已经计划好了,因为你使用了%%A):

@echo off
setlocal enabledelayedexpansion
set PREFIX=in_
set REPLACETEXT=hello
for /R  "." %%f in (*.txt) do ( 
    set FILENAME=%%~nf
    (for /f "delims=" %%A in (%%f) do (
        SET string=%%A
        set modified=!string:%PREFIX%%%~nf=%REPLACETEXT%!
        echo !modified!
        REM echo !string:%PREFIX%%%~nf=%REPLACETEXT%!
    ))>%%~dpnf.new
) 

答案 1 :(得分:0)

所以我有这个功能解决方案:

app.directive('sectionLeft', function() {
  return {
    restrict:'E',
    scope: {
       sectionContent: '=',
       sectionImg: '='
    },
    templateUrl: 'partials/section_left.html'
  };
});

app.directive('sectionRight', function() {
  return {
    restrict:'E',
    scope: {
       sectionContent: '=',
       sectionImg: '='
    },
    templateUrl: 'partials/section_right.html'
  };
});

但仍有一个问题,我没有性格!在输出文件的摘要中,一行包含< ! - (没有空格,但我不能在这里写)但在输出中我只有这个< -