Лучший отвечающий
OPENFILES Powershell

Вопрос
-
Как на повершеле отшибить всех пользователей использовавшие файл c\folder\file.ini на машинках server001 - server100
в cmd есть рульная команда, но нужно сделать кодом powershell
OPENFILES /Disconnect /s server01 /op \\server01\c$\folder\file.ini /a "*"
13 мая 2011 г. 7:18
Ответы
-
Если не секрет, почему нужно сделать именно на PowerShell? Что мешает вызвать ту же утилиту (openfiles.exe) из PowerShell вместо cmd? Cmd просто оболочка, "своих" команд у него раз, два и обчелся.
AKA Xaegr, MVP: PowerShell Блог: http://xaegr.wordpress.com- Помечено в качестве ответа Dmitry DavydovModerator 31 мая 2011 г. 14:33
14 мая 2011 г. 7:12Модератор -
Плпробуйе так:
Start-Process openfiles -ArgumentList ' /Disconnect /s server1 /op \\server1\c$\folder\file.ini /a "*"'
или так:
Start-Process openfiles -ArgumentList " /Disconnect /s server1 /op \\server1\c$\folder\file.ini /a `"*`""
my blog: http://shserg.ru/- Помечено в качестве ответа KazunEditor 3 июня 2011 г. 6:41
16 мая 2011 г. 6:24
Все ответы
-
Из того, что помню "на вскидку":
2й вариант: парсить вывод утилиты handle от Русиновича и отстреливать проблемные процессы
3й вариант: как-нибудь еще ;)
my blog: http://shserg.ru/13 мая 2011 г. 9:58 -
Если не секрет, почему нужно сделать именно на PowerShell? Что мешает вызвать ту же утилиту (openfiles.exe) из PowerShell вместо cmd? Cmd просто оболочка, "своих" команд у него раз, два и обчелся.
AKA Xaegr, MVP: PowerShell Блог: http://xaegr.wordpress.com- Помечено в качестве ответа Dmitry DavydovModerator 31 мая 2011 г. 14:33
14 мая 2011 г. 7:12Модератор -
можно и ее использовать. Только что-то не получается подставить переменню в cmd строку вместо server1 $serverNAME ?
for ($i=1; $i -lt 101; $i++)
{
$serverNAME = "server" + "$i" + ".domain.name"
Write-Host $serverNAME
$sessions = $null
# cmd /c 'OPENFILES /Disconnect /s server1 /op \\server1\c$\folder\file.ini /a "*"'
}16 мая 2011 г. 6:19 -
Плпробуйе так:
Start-Process openfiles -ArgumentList ' /Disconnect /s server1 /op \\server1\c$\folder\file.ini /a "*"'
или так:
Start-Process openfiles -ArgumentList " /Disconnect /s server1 /op \\server1\c$\folder\file.ini /a `"*`""
my blog: http://shserg.ru/- Помечено в качестве ответа KazunEditor 3 июня 2011 г. 6:41
16 мая 2011 г. 6:24 -
> Только что-то не получается подставить переменню в cmd строку вместо server1 $serverNAME?
Поменяйте кавычки на двойные:
cmd /c "openfiles /disconnect /s $serverName /op \\server1\c$\folder\file.ini /a "*""
16 мая 2011 г. 16:27 -
а здесь?
18 мая 2011 г. 10:27