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

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

Max_ma 24-10-2017 14:52 2773067

Поиск и перезапуск процесса по его занимаемой памяти
 
Всем привет! Есть программа которая работает в определенных границах занимаемой памяти это 1,2гб оперативы, если процесс занимает меньше или больше места, программа не работает, есть скрипт для перезапуска этой программы. Можно ли сделать допустим скан 1 раз в час (через планировщик реализую), который будет смотреть сколько занимает места программа и решать будет ли запускаться скрипт или нет. но проблема еще в том, что есть еще такой процесс с таким же именем (java.exe) он занимает до 200мб, его убивать не надо..

Kazun 24-10-2017 15:07 2773071

  • 1. Определить рабочие границы Get-Process java | Select PrivateMemorySize
  • 2. Указать условие в блоке Where

Код:

Get-Process java | Where {$_.PrivateMemorySize -gt 1gb}

Max_ma 24-10-2017 15:28 2773076

Цитата:

Цитата Kazun (Сообщение 2773071)
  • 1. Определить рабочие границы Get-Process java | Select PrivateMemorySize
  • 2. Указать условие в блоке Where

Код:

Get-Process java | Where {$_.PrivateMemorySize -gt 1gb}

Можно для чайника, как прописать это правильно если один процесс в границе от 1.1 до 1.6гб, а второй от 10 до 200мб?

Kazun 24-10-2017 16:20 2773089

от 1.1 до 1.6гб:
Код:

Get-Process java | Where {$_.PrivateMemorySize -gt 1.1gb -and $_.PrivateMemorySize -lt 1.6gb}
10 до 200мб:
Код:

Get-Process java | Where {$_.PrivateMemorySize -gt 10mb -and $_.PrivateMemorySize -lt 200mb}

Max_ma 25-10-2017 10:53 2773233

Цитата:

Цитата Kazun
от 1.1 до 1.6гб:
Код:
Get-Process java | Where {$_.PrivateMemorySize -gt 1.1gb -and $_.PrivateMemorySize -lt 1.6gb}
10 до 200мб:
Код:
Get-Process java | Where {$_.PrivateMemorySize -gt 10mb -and $_.PrivateMemorySize -lt 200mb} »


выводиться только один процесс java, а тот который нужно не видит его
https://drive.google.com/file/d/0B1p...ew?usp=sharing

Kazun 25-10-2017 11:21 2773241

Если так?
Код:

Get-Process java | Where {$_.PrivateMemorySize64 -gt 1.1gb -and $_.PrivateMemorySize64 -lt 1.6gb}

Max_ma 25-10-2017 13:01 2773272

Цитата:

Цитата Kazun
Get-Process java | Where {$_.PrivateMemorySize64 -gt 1.1gb -and $_.PrivateMemorySize64 -lt 1.6gb} »

результат тот же, сделал как здесь описано http://forum.oszone.net/nextnewesttothread-183577.html только проблема, не знаю как поставить здесь "If objProcess.WorkingSetSize < 11291456 Then" условие между между

Kazun 25-10-2017 13:24 2773276

Показать вывод и указать, какой процесс подпадает под условие:
Код:

Get-Process java | select wor*,id

Max_ma 25-10-2017 13:36 2773278

Цитата:

Цитата Kazun
Get-Process java | select wor*,id »

у меня 70 компов, это будет сложно вычислять по ид каждый комп)

Kazun 25-10-2017 13:51 2773284

Код:

Get-Process java | Where {$_.WorkingSet64 -gt 1.1gb -and $_.WorkingSet64 -lt 1.6gb} | Foreach {Команда, если условие выполняется}

Max_ma 25-10-2017 14:35 2773292

Цитата:

Цитата Kazun
Get-Process java | Where {$_.WorkingSet64 -gt 1.1gb -and $_.WorkingSet64 -lt 1.6gb} | Foreach {Команда, если условие выполняется} »


Спасибо, то что надо


Время: 04:37.

Время: 04:37.
© OSzone.net 2001-