文件替换目录中的所有文件

时间:2015-09-21 11:28:32

标签: regex windows perl

在Windows 2008中,我们在目录中有多个文件。这些文件的路径为内容,这些文本应替换为其他字符串。如下所示:

文件的路径如下:

File1中:

C:\ Apps \ etc \ A1 \ X.exe应替换为C:\ Apps \ exe \ X.exe

文件2:

C:\ Apps \ etc \ B1 \ Y.exe应替换为C:\ Apps \ exe \ Y.exe

我正在尝试找到一个命令,它将替换上面提到的粗体字母字符串。

如果是普通字符串,我使用下面的命令,它可以工作:

perl -i.bak -pe "BEGIN{@ARGV = map glob, @ARGV} s/string1/string2/g" ./*.txt 

但目前的要求似乎使用正则表达式,我无法找到解决方案。

1 个答案:

答案 0 :(得分:1)

只需用exe:

替换etc \后跟任何东西再到一个\
's/etc\\[^\\]*\\/exe\\/g'