Powershell: Мониторинг принтеров (Часть 1)

PowerShellМониторинг принтеров, думаю каждый прочитав два загадочных слова этих, задумался, что же будет в этой статье. Давайте приступим и узнаем, что у нас получится реализовать с помощью powershell.

Powershell: Мониторинг принтеров (Часть 1)

В ходе работы бывают разные задачи, недавно появилась необходимость мониторить наличие принтеров. Имеется хранилище, где хранится весь список принтеров, периодически он обновляется. Нужно записывать список принтеров в файл и отправлять контент на линукс-сервер. Всё это мы с вами и попробуем сделать.На борту powershell имеется командлет Get-Printer, синтаксис довольно простой, если известно имя принтера:

Команда выше выведет информацию по конкретному принтеру с указанным именем. Если известен сервер, где обитают принтеры:

Данная команда возвращает список принтеров, с указанием имени, типа, драйвера,порта и типа девайса, есть ещё остальные свойства, но они нам не важны. Всё, что выведено в консоли powershell можно сохранить в переменную:

Выводим, что есть в переменной, введя имя нашей переменной в консоли, после нажав ‘Enter’:

Снова возвращается список принтеров, что и был выше.

Выводим только имя принтеров:

Убираем пробелы, оставляем только имена:

Сохраняем в файл в отформатированном виде:

Список принтеров у нас готов, он лежит по пути, который вы указали. В примере я указал «D:\temp\print.txt», вы можете указать свою директорию, предварительно создав папку, файл с контентом создастся сам. Вы можете завести эти команды в цикл по расписанию, инструкция в статье, и контент будет наполняться автоматом. В следующей статье по данной теме мы рассмотрим варианты заливки на линукс-сервер этого файла.

Всем добра и сочных печенек!

Лицензионное соглашение

Авторские права публикуемых материалов полностью или частично принадлежат авторам сайта Pechenek.NET в соответствии со статьями 1252 и 1301 ГК РФ. Любое распространение должно быть согласовано с автором материала или с указанием ссылки на первоисточник.