我需要编写一个正则表达式来更新一些注册表文件,以便为即将到来的迁移工作
我必须动态更新文件中的所有字符串:
我得到它做1和2,但不是3和4.我使用PowerShell 4.0,递归检查目录中的文件并生成一个新文件,其中包含每个子目录中找到的每个文件的更改。 / p>
转换应如下所示:
FROM: setting1="\"C:\\\\this\\\\is\\\\\adirectory\""
TO: setting1="\"O:\\\\\New_Directory_Path\""
FROM: othersetting="\"C:\\\\this\\\\abc\\\\directory""
TO:UNCHANGED
FROM: thisfile="\"(C:\\\\this\\\\directory\\\\somefile.some_ext)""
TO: thisfile="\"(O:\\\\New_Directory_Path\\\\somefile.some_ext)""
我在这个问题上的智慧结束了,到目前为止,这就是正则表达式:
gc $file | % {$_ -replace "C:(?!.*abc.*)(?!.*xyz.*)(?!.*\..*).*","O:\\\\New_Directory_Path\"} | out-file "$filePath\$newFileName"
希望有人在这里伸出援助之手。此外,这是我第一次在这里发帖,抱歉没有把我的代码放在标签中。