我在所有C:驱动器中的* .config文件中有很多连接字符串。我使用Windows 8,VS 2012,TFS 2008。
我在Source Control TFS中有一些* .config文件,工作区映射在本地文件夹C:\ TFS中。
我在源代码管理TFS中有一些* .config文件,在另一个文件夹中(C:\ Tests,C:\ Windows,C:\ Temp等)。
我想在所有* .config文件中替换密码。
使用像Powershell或bat / cmd文件这样的脚本可能更好。
<add name="ConnectionStrings.Oracle.ConnectionLog" connectionString="DATA SOURCE=xxx;PASSWORD=AAAAAAA;PERSIST SECURITY INFO=True;USER ID=MYUSER"
providerName="Oracle.DataAccess.Client" />
我用
var configs = Directory.GetFiles(@"C:\", "*.config");
configs.ForEach( f => ReplacePasswordOfFile(f));
如果* .config文件不在TFS中,我想要:
string.Replace
和File.WriteAllText
更改密码如果* .config文件在TFS中,我想要:
string.Replace
和File.WriteAllText
更改密码如何知道源代码管理TFS中是否有配置文件? 关于这个过程的任何建议?
答案 0 :(得分:0)
这将遍历特定分支中的所有文件并输出名称。这将为您提供TFS中的配置文件列表。
$serverBranchLocation = "$/Project/Branch"
$tfs=Get-TfsServer -name http://tfs:8080/tfs
foreach ($item in Get-TfsChildItem $serverBranchLocation -recurse -server $tfs) {
if ($item -match "*.config") {
echo $item
}
}