Работая на первой линии тех.поддержки, я часто сталкивался с рутиной, особенно очень хотелось минимизировать подключение к рабочему столу пользователей для сбора информации и как-то автоматизировать этот процесс, что привело меня к осваиванию языка PowerShell и написанию скриптов, которые в последствии оформились в самостоятельные программы. Некоторые из них я решил выложить на GitHub, возможно для кого-то они будут полезны.
ScanPC
Утилита, сканирующая удалённый ПК и показывающая версию ОС, информацию о дисках, железе, открытых портах из списка (22,445,80,8080,3389,5900,1541,10050), установленных принтерах, пользователях, вошедших в систему, список профилей пользователей в папке C:\Users
, размер системных папок и фалов, папки с документами в профилях пользователей размером больше 100МБ.
Если объём корзины (C:\$Recycle.Bin
) превышает 500МБ, то на панели появляется кнопка CR, она запускает скрипт для удаления из корзины файлов старше двух месяцев, таким образом пользователь не потеряет файл, недавно перемещённый в корзину.
Скрипт поддерживает работу с доменом и запрашивает имена пользователей у домена.
Также скрипт показывает информацию об устройствах и сетевых папках на удалённом ПК, кнопка Devices. Если устройство было подключено или отключено, то при следующем сканировании оно будет выделено цветом.
Запросы к удалённому ПК осуществляются командами Get-WmiObject
, Invoke-Command
и через доступ к папкам по SMB. Если скрипт не может получить информацию, то возможно доступ блокирует фаервол, либо на ПК отключены необходимые службы(WinRM), либо пользователь не добавлен в группу администраторы на удалённом ПК.
Скриншот 1
![](https://habrastorage.org/getpro/habr/upload_files/4af/147/57b/4af14757b46cab95ad03c5638d06a166.jpg)
Скриншот 2
![](https://habrastorage.org/getpro/habr/upload_files/2bb/07f/688/2bb07f688c9682ce846d5d059068d242.jpg)
Вывод Devices с подсветкой подключенного устройства
![](https://habrastorage.org/getpro/habr/upload_files/5d3/1d1/00a/5d31d100a93047608a2156df3eada2dc.jpg)
ScanFolderSize
Скрипт который поможет почистить диск. Сканирует папки на локальном и удалённом ПК, а также на сетевых папках, выводит путь и размер папки.
Для сканирования удалённого ПК используется команда Invoke-Command
, для её работы требуется работа службы WinRM на удалённом ПК, если она остановлена, то служба запускается на время работы скрипта.
Скриншот
![](https://habrastorage.org/getpro/habr/upload_files/521/657/b70/521657b70920768f8ae7da3837ac75cd.jpg)
Если вы знаете программы с подобным функционалом, напишите о них в комментариях, особенно если они лучше, возможно я о них просто не знал и потратил время зря :)