Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   [решено] Удаление *.exe (http://forum.oszone.net/showthread.php?t=327711)

ogay 19-06-2017 13:24 2745790

Удаление *.exe
 
Добрый день!
Подскажите как написать скрипт, на удаление файлов exe
Есть сеть около 300 пк все в домене.
Задача в том, что бы удалять определенные exe файл принудительно. если exe сидит в процессах то останавливать процесс и удалять.
Дело в том что по сети гуляет вирус на антивирус нормальный денег нет (руководство жадное) а вирус как-то искоренить надо )))

Прикинул должно быть так... но если висит в процессе то удаление не происходит
Remove-Item "C:\111.exe" -Recurse
Remove-Item "C:\222.exe" -Recurse

Iska 19-06-2017 13:46 2745797

Цитата:

Цитата ogay
Дело в том что по сети гуляет вирус »

Какой именно?

Цитата:

Цитата ogay
а вирус как-то искоренить надо ))) »

Метод искоренения будет напрямую зависеть от конкретной версии конкретного вируса.

И правильнее Вам будет обратиться в профильный раздел: Лечение систем от вредоносных программ.

ogay 19-06-2017 13:47 2745798

Iska, Win32/Exploit.CVE-2017-0147.A

Я понимаю, что так не правильно. но как временное средство хотим попробовать, да и для себя интересно как можно удалить используемый файл

Iska 19-06-2017 13:54 2745803

ogay, я указал направление.

ogay 19-06-2017 13:59 2745805

Iska, за направление спасибо, почитаю... а вот все же на счет удаления не подскажите?

ogay 19-06-2017 14:31 2745812

Ответ нашел... кому интересно:

Stop-Process -name "111" #Остановка процесса
sleep 1 #пауза 1 сек
Remove-Item "C:\111.exe" -Recurse #удаление

Luka666 22-06-2017 09:28 2746590

Я бы так напейсал бы. )

Цитата:

cls
import-module ActiveDirectory

$wslist = Get-ADComputer -filter * -SearchBase "ou=компы(workstations), ou=флиал, ou=подразделение, dc=домимя1, dc=домимя2, dc=домимя3, dc=ru"|Select -ExpandProperty name

foreach( $ws in $wslist)
{

$dir1 = "\\" + $ws + "\C$\111.exe"

if (test-connection -computername $ws -count 2 -quiet)
{
write-host $ws "available, check it..." -BackgroundColor Green

if (-not(Get-Process ComputerName $ws| where {$_.ProcessName -eq '111'}))

{
write-host $ws "process not active" -ForegroundColor black
}
else
{
write-host $ws "Process is active, Killing process..." -ForegroundColor red
get-process -name 111 -ComputerName $ws| stop-process
# Убиваем процесс 111
}


if (Test-Path $dir1 )
{
sleep 1 #пауза 1 сек
Remove-Item $dir1 -Recurse #удаление
write-host $ws "removing muck" -BackgroundColor yellow
}

else
{
write-host "At" $ws "muck not found... skip." -BackgroundColor blue
}
}

else
{
write-host $ws "not available, skip" -background red
}
}
Как-то так. Набрасывал прямо тут, но вродь должно работать. )
P.S. После проверил, была куча косяков, вродь всё исправил.


Время: 18:40.

Время: 18:40.
© OSzone.net 2001-