Question
Suppression de process par utilisation de mémoire
- Martin Bouchard
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 4
- Remerciements reçus 0
il y a 8 ans 4 mois #24478
par Martin Bouchard
Suppression de process par utilisation de mémoire a été créé par Martin Bouchard
Bonjour à tous, je suis nouveau sur ce Forum.
J'ai besoin de monter un script qui ferme une application spécifique lorsque cette application utilise au dessus 8Ggs de ram.
J'ai fait quelque recherche sur internet mais je ne sais comment mis prendre.
Merci !
J'ai besoin de monter un script qui ferme une application spécifique lorsque cette application utilise au dessus 8Ggs de ram.
J'ai fait quelque recherche sur internet mais je ne sais comment mis prendre.
Merci !
Connexion ou Créer un compte pour participer à la conversation.
- Philippe
- Hors Ligne
- Modérateur
-
Réduire
Plus d'informations
- Messages : 1778
- Remerciements reçus 21
il y a 8 ans 4 mois #24480
par Philippe
Réponse de Philippe sur le sujet Suppression de process par utilisation de mémoire
salut martinbouc
alors un get-process te donne la liste des process
avec comme resultat ceci :
[code:1]Handles NPM(K) PM(K) WS(K) CPU(s) Id SI ProcessName
-- --
2921 44 439468 226752 255,50 15396 1 AdblockPlusEngine
48 4 912 852 3572 0 AERTSr64
776 38 109844 21872 1 302,55 12224 1 ApplicationFrameHost
141 9 1648 1624 4956 0 armsvc
250 17 11864 15944 0,16 38720 0 audiodg
651 25 7828 18480 5,00 11832 1 browser_broker
43 4 3840 1516 0,31 8136 1 cmd [/code:1]
apres tu isole ton appli, ici CMD
[code:1]Get-Process cmd
Handles NPM(K) PM(K) WS(K) CPU(s) Id SI ProcessName
-- --
43 4 3840 1516 0,31 8136 1 cmd [/code:1]
la tu choisi la propriété mémoire que tu recherche :
[code:1]Name : cmd
Id : 21452
PriorityClass : Normal
FileVersion : 10.0.15063.0 (WinBuild.160101.0800)
HandleCount : 42
WorkingSet : 1261568
PagedMemorySize : 3358720
PrivateMemorySize : 3358720
VirtualMemorySize : 18546688
TotalProcessorTime : 00:00:00.3437500
SI : 1
Handles : 42
VM : 2199041802240
WS : 1261568
PM : 3358720
NPM : 3992
Path : C:\WINDOWS\system32\cmd.exe
Company : Microsoft Corporation
CPU : 0,34375
ProductVersion : 10.0.15063.0
Description : Interpréteur de commandes Windows
Product : Système d’exploitation Microsoft® Windows®
__NounName : Process
BasePriority : 8
ExitCode :
HasExited : False
ExitTime :
Handle : 688
SafeHandle : Microsoft.Win32.SafeHandles.SafeProcessHandle
MachineName : .
MainWindowHandle : 530070
MainWindowTitle : Invite de commandes
MainModule : System.Diagnostics.ProcessModule (cmd.exe)
MaxWorkingSet : 1413120
MinWorkingSet : 204800
Modules : {System.Diagnostics.ProcessModule (cmd.exe), System.Diagnostics.ProcessModule (ntdll.dll), System.Diagnostics.ProcessModule
(KERNEL32.DLL), System.Diagnostics.ProcessModule (KERNELBASE.dll)...}
NonpagedSystemMemorySize : 3992
NonpagedSystemMemorySize64 : 3992
PagedMemorySize64 : 3358720
PagedSystemMemorySize : 27880
PagedSystemMemorySize64 : 27880
PeakPagedMemorySize : 4419584
PeakPagedMemorySize64 : 4419584
PeakWorkingSet : 3510272
PeakWorkingSet64 : 3510272
PeakVirtualMemorySize : 19664896
PeakVirtualMemorySize64 : 2199042920448
PriorityBoostEnabled : True
PrivateMemorySize64 : 3358720
PrivilegedProcessorTime : 00:00:00.2968750
ProcessName : cmd
ProcessorAffinity : 15
Responding : True
SessionId : 1
StartInfo : System.Diagnostics.ProcessStartInfo
StartTime : 23/10/2017 14:43:25
SynchronizingObject :
Threads : {19700, 35632}
UserProcessorTime : 00:00:00.0468750
VirtualMemorySize64 : 2199041802240
EnableRaisingEvents : False
StandardInput :
StandardOutput :
StandardError :
WorkingSet64 : 1261568
Site :
Container :
[/code:1]
comme tu vois tu a le choix entre :
NonpagedSystemMemorySize, NonpagedSystemMemorySize64, agedMemorySize64, PagedSystemMemorySize, PagedSystemMemorySize64, VirtualMemorySize64, PrivateMemorySize64
et pour finir tu fais un IF
[code:1]$appli = Get-Process tonappli
if ($appli.VirtualMemorySize -ge 8000000000) {
Stop-Process tonappli
}[/code:1]
voila a quoi pourrait ressembler ton script
alors un get-process te donne la liste des process
avec comme resultat ceci :
[code:1]Handles NPM(K) PM(K) WS(K) CPU(s) Id SI ProcessName
-- --
2921 44 439468 226752 255,50 15396 1 AdblockPlusEngine
48 4 912 852 3572 0 AERTSr64
776 38 109844 21872 1 302,55 12224 1 ApplicationFrameHost
141 9 1648 1624 4956 0 armsvc
250 17 11864 15944 0,16 38720 0 audiodg
651 25 7828 18480 5,00 11832 1 browser_broker
43 4 3840 1516 0,31 8136 1 cmd [/code:1]
apres tu isole ton appli, ici CMD
[code:1]Get-Process cmd
Handles NPM(K) PM(K) WS(K) CPU(s) Id SI ProcessName
-- --
43 4 3840 1516 0,31 8136 1 cmd [/code:1]
la tu choisi la propriété mémoire que tu recherche :
[code:1]Name : cmd
Id : 21452
PriorityClass : Normal
FileVersion : 10.0.15063.0 (WinBuild.160101.0800)
HandleCount : 42
WorkingSet : 1261568
PagedMemorySize : 3358720
PrivateMemorySize : 3358720
VirtualMemorySize : 18546688
TotalProcessorTime : 00:00:00.3437500
SI : 1
Handles : 42
VM : 2199041802240
WS : 1261568
PM : 3358720
NPM : 3992
Path : C:\WINDOWS\system32\cmd.exe
Company : Microsoft Corporation
CPU : 0,34375
ProductVersion : 10.0.15063.0
Description : Interpréteur de commandes Windows
Product : Système d’exploitation Microsoft® Windows®
__NounName : Process
BasePriority : 8
ExitCode :
HasExited : False
ExitTime :
Handle : 688
SafeHandle : Microsoft.Win32.SafeHandles.SafeProcessHandle
MachineName : .
MainWindowHandle : 530070
MainWindowTitle : Invite de commandes
MainModule : System.Diagnostics.ProcessModule (cmd.exe)
MaxWorkingSet : 1413120
MinWorkingSet : 204800
Modules : {System.Diagnostics.ProcessModule (cmd.exe), System.Diagnostics.ProcessModule (ntdll.dll), System.Diagnostics.ProcessModule
(KERNEL32.DLL), System.Diagnostics.ProcessModule (KERNELBASE.dll)...}
NonpagedSystemMemorySize : 3992
NonpagedSystemMemorySize64 : 3992
PagedMemorySize64 : 3358720
PagedSystemMemorySize : 27880
PagedSystemMemorySize64 : 27880
PeakPagedMemorySize : 4419584
PeakPagedMemorySize64 : 4419584
PeakWorkingSet : 3510272
PeakWorkingSet64 : 3510272
PeakVirtualMemorySize : 19664896
PeakVirtualMemorySize64 : 2199042920448
PriorityBoostEnabled : True
PrivateMemorySize64 : 3358720
PrivilegedProcessorTime : 00:00:00.2968750
ProcessName : cmd
ProcessorAffinity : 15
Responding : True
SessionId : 1
StartInfo : System.Diagnostics.ProcessStartInfo
StartTime : 23/10/2017 14:43:25
SynchronizingObject :
Threads : {19700, 35632}
UserProcessorTime : 00:00:00.0468750
VirtualMemorySize64 : 2199041802240
EnableRaisingEvents : False
StandardInput :
StandardOutput :
StandardError :
WorkingSet64 : 1261568
Site :
Container :
[/code:1]
comme tu vois tu a le choix entre :
NonpagedSystemMemorySize, NonpagedSystemMemorySize64, agedMemorySize64, PagedSystemMemorySize, PagedSystemMemorySize64, VirtualMemorySize64, PrivateMemorySize64
et pour finir tu fais un IF
[code:1]$appli = Get-Process tonappli
if ($appli.VirtualMemorySize -ge 8000000000) {
Stop-Process tonappli
}[/code:1]
voila a quoi pourrait ressembler ton script
Connexion ou Créer un compte pour participer à la conversation.
- Martin Bouchard
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 4
- Remerciements reçus 0
il y a 8 ans 4 mois #24481
par Martin Bouchard
Réponse de Martin Bouchard sur le sujet Re:Suppression de process par utilisation de mémoire
Merci beaucoup pour la réponse, je fait des test.
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.036 secondes
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- Suppression de process par utilisation de mémoire