Массовое изменение файла Hosts

Обсуждаем проблемы программирования
Ответить
Scrat2005
Сообщения: 17
Зарегистрирован: Вс окт 11, 2020 2:28 pm

Массовое изменение файла Hosts

Сообщение Scrat2005 »

Добрый вечер! Нужна Ваша помощь. Задача удалить определенную строку из файла Hosts. У меня есть крипт, который работает для одного хоста.
Подскажите как запустить этот скрипт для списка хостов. Заранее благодарен.

Код: Выделить всё

# Убираем строку в файле HOSTS из списка компьютеров

#$comps = Get-Content "C:\Script\ListComps.txt" - как мне использовать эту строку?

$path = "C:\Windows\System32\drivers\etc\hosts"
$sap = "10.10.33.54 sapsol.contoso.local"

$hosts = Get-Content -path $path


if ($hosts -contains $sap ) {

 
 Clear-Content $path
 $hosts = $hosts -replace $sap, "" | Out-File $path
 }
через psexec можно. Но его запуск у нас запрещен безопасниками.
psexec.exe @C:\Script\ListComps.txt -u Username -p Password -h powershell.exe -file "\\Fileserver\ClearHosts.ps1"
Аватара пользователя
sanglyb
Site Admin
Сообщения: 49
Зарегистрирован: Вт сен 19, 2017 9:32 pm

Re: Массовое изменение файла Hosts

Сообщение sanglyb »

Т.к. запрещен psexec, думаю можно предположить, что и удалённый powershell тоже запрещен?
В данном случае, мне кажется, можно через групповые политики раскидать скрипт, например как startup script.
#$comps = Get-Content "C:\Script\ListComps.txt" - как мне использовать эту строку?
Вероятно, в файле C:\Script\ListComps.txt - должен быть простой список компьютеров, но с учётом невозможности удалённого запуска - это не нужно.
Ответить