Windows Power Shell 关闭无用的Chrome

最近在用一个以Selenium为基础的工具做自动测试,遇到一个问题。


自动测试失败后的浏览器会一直开着,这样长时间运行后,会出现很多浏览器都被打开,资源占用很高,机器性能变得很差,进而导致更多的失败。



解决方案:

关闭每个失败的浏览器

但因为我无法修改工具里面失败部分的处理代码,所以需要单独写一个监控Chrome进程的程序,一旦发现有两个Chrome浏览器打开,就关闭先打开的那个Chrome浏览器。


令人郁闷的是

1  打开一个Chrome的时候,任务管理器里面会出现多个Chrome的进程,不知道要关哪个才好

2  不知道怎么才能得到进程的打开时间


经过Google,Baidu一大圈之,排除使用Java,批处理等之后,发现Windows Power Shell脚本可以拿到进程的打开时间,可以关闭进程,总之可以关闭先打开的那个Chrome。


Shell在Win8上默认可以运行,

但需要修改权限:Set-ExecutionPolicy -ExecutionPolicy RemoteSigned

修改脚本存放的目录: Set-Location C:\Scripts


脚本:

Clear-Host

while(1 -eq 1)
{
	$ProcessCount = (Get-Process | Where-Object {$_.Name -eq "chrome" -and $_.HandleCount -gt 500} | Sort-Object StartTime -errorAction SilentlyContinue).Count
	if($ProcessCount -gt 1)
	{
		$ProcessID = (Get-Process | Where-Object {$_.Name -eq "chrome" -and $_.HandleCount -gt 500} | Sort-Object StartTime -errorAction SilentlyContinue | Select-Object -first 1 ).Id
		Write-Host $ProcessID
		stop-process -id $ProcessID
		start-sleep -m 500
	}
}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值