使用查找和替换工具(fnr.exe)与--excludeFileMask

时间:2016-06-02 14:50:02

标签: regex windows replace find

我必须在一个洞项目中替换字符串内的某个字符串(撇号内的任何出现)。我正在使用的工具是"查找和替换工具" (fnr.exe,https://findandreplace.codeplex.com/)。我正在使用Microsoft Windows。

要替换的字符串位于C:\ MyDirectory中的.cls文件(Smalltalk)中。但是有一些文件夹包含应该从替换(NoSearch)中排除的文件。因此我使用以下命令:

fnr.exe --cl --dir "C:\MyDirectory" --fileMask "*.cls" --excludeFileMask ".\NoSearch\*" --includeSubDirectories --useRegEx --showEncoding --find "(?<='.*)MyString(?=.*')"

(目前只发现,确认匹配是否正确;我用代理人替换了实际路径)

但该命令还匹配&#34; C:\ MyDirectory \ NoSearch&#34;中的文件。所以我也尝试了excludeFileMask的以下值:

  • .\NoSearch\*.*
  • .*\\NoSearch\\.*
  • *NoSearch*

这些都不起作用。我必须基本上不知道excludeFileMask-Command是如何工作的。我做错了什么?

编辑:

似乎掩码只能用于文件名本身,没有任何目录。幸运的是,我想要排除的所有文件都有一些前缀来识别它们。使用它们与通配符一起工作。例如,NoSearchPrefix_*.*排除所有以&#34; NoSearchPrefix _&#34;开头的文件。

0 个答案:

没有答案