Jump to content

smcclos

Members
  • Posts

    2
  • Joined

  • Last visited

Everything posted by smcclos

  1. I looked at this script, and it will always return "Operating system is not supported" because in the script $major and $minor are strings, I was able to confirm that with the commands: $major.GetType() IsPublic IsSerial Name BaseType -------- -------- ---- -------- True True String System.Object $minor.GetType() IsPublic IsSerial Name BaseType -------- -------- ---- -------- True True String System.Object I recommend updating the script to this, and I highlighted the changes: $version = (Get-WmiObject Win32_OperatingSystem).Version [int]$major = $version.split(".")[0] [int]$minor = $version.split(".")[1] if ($major -gt 6 -or ($major -eq 6 -and $minor -gt 1)) { Optimize-Volume -driveletter $pwd.drive.name -Analyze -verbos } Else { Write-Output "Operating system is not supported." } Here is the original script: $version = (Get-WmiObject Win32_OperatingSystem).Version $major = $version.split(".")[0] $minor = $version.split(".")[1] if ($major -gt 6 -or ($major -eq 6 -and $minor -gt 1)) { Optimize-Volume $pwd.drive.name -Analyze -verbos } Else { Write-Output "Operating system is not supported." } REF: https://learn.microsoft.com/en-us/powershell/module/storage/optimize-volume?view=windowsserver2022-ps REF: https://lazyadmin.nl/powershell/if-else-statements/ REF: https://theitbros.com/powershell-convert-string-to-int/
  2. The primary reason that I have Pulseway is for Patching.
×
×
  • Create New...