powershell 如果互联网可用,请每15分钟检查一次,如果没有则重新启动网卡。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了powershell 如果互联网可用,请每15分钟检查一次,如果没有则重新启动网卡。相关的知识,希望对你有一定的参考价值。

# ----------------------------------------------
# Author: Romain Blanchard
# Date: 28.06.2012
# Description: Check every 15minutes if internet is available, reboot network card if not.
# ----------------------------------------------

cls
function CheckURL( ){
 
	Set-Variable -Name return -Value 0 -Scope 0 
	trap [Exception]{	
		Set-Variable -Name return -Value 1 -Scope 1
		$nic = Get-WmiObject win32_networkadapter -computerName LocalHost -filter "DeviceId = 7"
		$nic.disable() | Out-Null
		start-sleep 15
		$nic.enable() | Out-Null
		
		start-sleep 5
		$Date = Get-Date
		$EmailFrom = "informations_serveur@news.com"
		$EmailTo = "blanchard.rom@gmail.com" 
		$Subject = "Le seveur à redémarrer - $Date"
		$Body = "" 
		$SMTPServer = "smtp.gmail.com" 
		$SMTPClient = New-Object Net.Mail.SmtpClient($SmtpServer, 587) 
		$SMTPClient.EnableSsl = $true 
		$SMTPClient.Credentials = New-Object System.Net.NetworkCredential("blanchard.rom", "*******"); 
		$SMTPClient.Send($EmailFrom, $EmailTo, $Subject, $Body)
		
		continue
	}
  
	$webclient = New-Object Net.WebClient	
	$response=$webclient.DownloadString("http://www.google.fr")
	
	if ($return -eq 0)
	{ 
		write-host "PING OK" -f green
	}
}

CheckURL







以上是关于powershell 如果互联网可用,请每15分钟检查一次,如果没有则重新启动网卡。的主要内容,如果未能解决你的问题,请参考以下文章

如果确切时间不可用,如何根据最后可用的时间戳返回值?

如何计算从上午 8:00 到晚上 8:00 以 15 分钟为间隔的可用时间?

Powershell - 调用远程 WMI 对象 - RPC 错误 HRESULT:0x800706BA(RPC 服务器不可用)

PowerShell 批量打开 EC2 Termination Protection

如何使程序仅在使用批处理或 powershell 有 Internet 连接时运行? [关闭]

ConvertTo-PnPClientSidePage 在 PnP PowerShell 中不可用