Я ищу сценарий для проверки всех пользователей Windows на предмет того, установлена ли и какая версия Microsoft Teams Classic. Этот скрипт необходимо запустить из Power Shell. Некоторое время назад я что-то собрал, но недавно понял, насколько это плохо. Он не только не проверяет всех пользователей (только текущих), но и включает массу дополнительной информации, которую вам нужно просмотреть, чтобы найти ответ, который иногда в лучшем случае частично правильный.
Что вы используете для поиска команд? (А тем временем я буду работать над созданием нового, хорошего сценария)
Я попробовал несколько сценариев удаления, но ни один из них не вернул то, что было установлено после запуска сценария. Проверка результатов проблематична.
Я сделал следующее, и до сих пор он делает все, что я хочу. Он идентифицирует всех пользователей на устройстве. Если установлен Teams Classic, выводится информация о том, какая версия установлена, а если она не установлена у этого пользователя, указывается, что у пользователя не установлены команды. Дайте мне знать, если у вас есть что-то еще, что вы используете.
#Enumerate local users
$Users | ForEach-Object {
#Locate Teams Installation folder
$localAppData = "$($ENV:SystemDrive)\Users\$($_.Name)\AppData\Local\Microsoft\Teams\curent\Teams.exe"
If (Test-Path "$($localAppData)")
{
Write-Warning "$($_.Name) has $((get-itemproperty -Path $localAppData).VersionInfo.FileVersion) installed."
}
else
{
Write-Output "Teams installation not found for user $($_.Name)"
}
}
Предыдущий сценарий выглядел следующим образом:
$cu=((Get-WMIObject -ClassName Win32_ComputerSystem).Username).split("\")[1];(cat \Users\$cu\AppData\Roaming\Microsoft\Teams\logs.txt).split(",") | Select-String "version 1.6"
В зависимости от версии я мог удалить 6 найденных в версии версий для поиска полупоследних версий.