ich eine Textdatei mit dem folgenden Text haben in: „“Wie kann ich eine Zeichenfolge zwischen zwei bestimmten Tags ersetzen
<ServerAddress>.</ServerAddress>
<ServerDatabase>test</ServerDatabase>
<ServerUsername>jimmy</ServerUsername>
Ich möchte das ersetzen können, mit einem read-host
eingegebenen Textstück. Zum Beispiel aus <ServerAddress>.</ServerAddress>
ändern
<ServerAddress>server1</ServerAddress>
Der Code, den ich zu weit Werke haben ... aber es ersetzt alles in der Datei auf die gleiche Zeichenfolge über und über, so in dem Beispiel von oben, müsste es Hier ersetzt alles mit <ServerAddress>server1</ServerAddress>
ist das, was ich bisher:
pushd "C:\PSF\Move to V6\DTT Files"
$configFiles = Get-ChildItem . *.dtt -rec
$servername = Read-Host 'What the server name?'
$regex='(m?)>[^<]+<'
foreach ($file in $configFiles)
{
(Get-Content $file.PSPath) |
Foreach-Object { "<ServerAddress>.</ServerAddress>" -replace $regex, ">$servername<" } |
Set-Content $file.PSPath
}