Public/Network/Restart-NetworkAdapters.ps1
function Restart-NetworkAdapters { # .SYNOPSIS # Restarts the network adapters (needs admin rights) # .DESCRIPTION # This PowerShell script restarts all local network adapters (needs admin rights). # .EXAMPLE # PS> Restart-NetworkAdapters # .INPUTS # Inputs (if any) # .OUTPUTS # Output (if any) [Diagnostics.CodeAnalysis.SuppressMessageAttribute("PSUseShouldProcessForStateChangingFunctions", "")] [CmdletBinding()] param ( [Parameter(Mandatory = $false)] [string[]]$NetAdapters ) begin { #Requires -RunAsAdministrator } process { $StopWatch = [system.diagnostics.stopwatch]::startNew() try { Get-NetAdapter | Restart-NetAdapter [int]$Elapsed = $StopWatch.Elapsed.TotalSeconds $msg = "✅ Successfuly restarted all local network adapters" Out-Verbose $fxn "restarted all local network adapters in $Elapsed sec" # success } catch { $msg = "Failed to restart network adapters." # Write-Log $_.Exception.ErrorRecord Out-Verbose $fxn "Errored: $($_.CategoryInfo.Category) : $($_.CategoryInfo.Reason) : $($_.Exception.Message)" } finally { Out-Verbose $fxn "$msg in $Elapsed sec" } } } |