Так что мой сценарий очень похож, поэтому я собираюсь опубликовать то, что я в итоге сделал.
У меня было несколько серверов с одинаковым сценарием в одном месте, и мне нужно было обновитьпуть во всех сценариях.
я просто заменил всю строку (строка 3 в этом сценарии) и переписал сценарий обратно
имена моих серверов и «пути» для замены старого пути были сохранены в массиве (вымог бы вытащить это из БД, если бы вы хотели автоматизировать это больше:
$servers = @("Server1","Server2")
$Paths = @("\\NASSHARE\SERVER1\Databackups","\\NASSHARE\SERVER2\Databackups")
$a = 0
foreach ($x in $servers)
{
$dest = "\\" + $x + "\e$\Powershell\Backup.ps1"
$newline = '$backupNASPath = "' + $Paths[$a] + '"'
$lines = @(Get-Content $dest)
$lines[3] = $newline
$lines > $dest
$a++
}
, это работает, и сэкономило мне кучу времени, заходя на каждый сервер и обновляя каждый путь.