Ёхохо.
И как всегда со здоровой на больную голову.
Как никак, а я ИТ инженер . Поступила задача от руководства выбрать VDI машины (Citrix Xen Desktop VDI), которые пользователи давно не используют с целью высвобождения и оптимизации ресурсов.
Как можно поступить? 1-й Вариант это запустить Citrix Studio и отобрать машины по Last Connection Time, но с таким списком работать не особо удобно, как с табличкой Excell .
Думаю, что не нужно быть сертифицированным специалистом чтобы с этой задачей справиться.
Этот первый вариант мне не подошел (потому, что не Excell). И мною был быстренько написан PowerShell скрипт, который делает кривенький csv файл с нужными мне данными.
Goole мне помог только с командлетами для XenDesktop.
Для осуществления выборки нужен Get-BrokerDesktop, а в качестве параметров ему нужно передать:
Asnp Citrix* $header = "LastConnectionTime;MachineName;AssociatedUserUPNs" Out-File -FilePath E:\tmp\notusedvdi.csv -InputObject $header -Encoding UTF8 $members = Get-BrokerDesktop -MaxRecordCount 1000 -AdminAddress srv-xd1 | select LastConnectionTime, MachineName, AssociatedUserUPNs | sort AssociatedUserUPNs foreach ($member in $members) { if($member.LastConnectionTime -lt (Get-Date).AddDays(-90)) { if(!$member.LastConnectionTime) {$member.LastConnectionTime = (Get-Date).Date.AddDays(-29200)} if($member.AssociatedUserUPNs){ $string = $member.LastConnectionTime.ToShortDateString() + ";" + $member.MachineName + "; " + $member.AssociatedUserUPNs Out-File -FilePath E:\tmp\notusedvdi.csv -InputObject $string -Encoding UTF8 -Append } } }
Вот таким образом я и решаю задачи на PowerShell .