Files
management-scripts/Test-InternetBandwidth.ps1
T
dyoder 96e2af2dda Tools.ps1: move all processes into functions and explicitly declare global variables
Test-InternetBandwidth.ps1: output to console instead of file
Uninstall-NCentralComponents.ps1: minor updates
2021-08-05 09:42:15 -04:00

53 lines
2.2 KiB
PowerShell

. 'C:\Users\dyoder\Emberkom\Data\Projects\development\management-scripts\Tools.ps1'
## Specify URL to SpeedTest CLI app
$URL = 'https://install.speedtest.net/app/cli/ookla-speedtest-1.0.0-win64.zip'
## Specify output file to write data to
$CurrentDateTime = Get-Date -Format "yyyyMMddHHmmssffff"
$OUTPUT = "${OutputDirectory}\${CurrentDateTime}_SpeedTest.csv"
## Download the app from the URL
$ZIPFILE = Download-File -URL $URL
## Setup the directory to extract the downloaded zip file to
$WORKINGDIR = $ZIPFILE.Substring(0, $ZIPFILE.LastIndexOf('.'))
If ( Test-Path $WORKINGDIR ) {
LogMsg "Deleting existing directory: ""$WORKINGDIR"""
Try { Remove-Item -Path $WORKINGDIR -Recurse -Force }
Catch { LogErr $_.Exception.Message }
}
LogMsg "Creating new directory: ""$WORKINGDIR"""
Try { New-Item -Path $WORKINGDIR -ItemType Directory -Force | Out-Null }
Catch { LogErr $_.Exception.Message }
## Extract $ZIPFILE to $WORKINGDIR
Try {
Add-Type -Assembly System.IO.Compression.FileSystem
[IO.Compression.ZipFile]::ExtractToDirectory($ZIPFILE, $WORKINGDIR)
}
Catch { LogErr $_.Exception.Message }
## Run the SpeedTest CLI app
$SPEEDTEST = "${WORKINGDIR}\speedtest.exe"
If ( Test-Path $SPEEDTEST ) {
#Try { Start-Process $SPEEDTEST -ArgumentList "--progress=no --selection-details --output-header --format=csv" -PassThru -Wait -RedirectStandardOutput $OUTPUT }
Try {
$RESULTS = (cmd.exe /c "${SPEEDTEST} --progress=no")
LogMsg $RESULTS
}
Catch { LogErr $_.Exception.Message }
} Else { LogMsg "The file does not exist at the expected path: ""${SPEEDTEST}""" }
## Cleanup files and directories created by this script
If ( Test-Path $ZIPFILE ) {
LogMsg "Deleting downloaded zip file: ""$ZIPFILE"""
Try { Remove-Item -Path $ZIPFILE -Force }
Catch { LogErr $_.Exception.Message }
} Else { LogMsg "Downloaded zip file no longer exists: ""$ZIPFILE""" }
If ( Test-Path $WORKINGDIR ) {
LogMsg "Deleting directory from extracted zip file: ""$WORKINGDIR"""
Try { Remove-Item -Path $WORKINGDIR -Recurse -Force }
Catch { LogErr $_.Exception.Message }
} Else { LogMsg "Directory from extracted zip file no longer exists: ""$WORKINGDIR""" }