Как стать автором
Обновить
0.7

PowerShell *

Расширяемое средство автоматизации от Microsoft

Сначала показывать
Порог рейтинга
Уровень сложности

PowerShell, HTML Agility Pack: связь с исходным HTML-файлом при его анализе

Время на прочтение4 мин
Количество просмотров878

В скрипте для программы-оболочки «Windows PowerShell» версии 5.1 (или «PowerShell» версии 7) в операционной системе «Windows 10» я получаю текст из файла с кодом на языке HTML для дальнейшего анализа. С помощью библиотеки «HTML Agility Pack» превращаю этот текст в объект $dom, содержащий HTML-дерево, представляющее исходный файл.

Как при анализе объекта с HTML-деревом получить сведения о местонахождении определенного узла HTML-дерева в исходном файле (номер строки, номер позиции в строке), чтобы вывести сообщение об ошибке? Оказывается, библиотека «HTML Agility Pack» обеспечивает такую возможность.

Читать далее
Всего голосов 6: ↑6 и ↓0+6
Комментарии2

PowerShell: обход и визуализация HTML-дерева из файла

Время на прочтение8 мин
Количество просмотров4.3K

Вывод HTML-дерева из локального файла в окно программы-оболочки «Windows PowerShell» версии 5.1 (или в окно программы-оболочки «PowerShell» версии 7) с помощью скрипта на языке PowerShell в операционной системе «Windows 10». Используется библиотека «HTML Agility Pack».

В качестве упражнения в алгоритмах и структурах данных рассмотрено несколько способов обхода и вывода HTML-дерева: NLR (прямой с приоритетом обхода потомков слева направо), NRL (прямой с приоритетом обхода потомков справа налево), LRN (обратный). Примеры практической реализации.

Читать далее
Всего голосов 2: ↑2 и ↓0+2
Комментарии14

PowerShell: HTML Agility Pack и AngleSharp

Время на прочтение6 мин
Количество просмотров3K

Как получить и использовать библиотеки «HTML Agility Pack» и «AngleSharp» для создания простого парсера HTML в скрипте для программ-оболочек «Windows PowerShell» версии 5.1 и «PowerShell» версии 7 в операционной системе «Windows 10». Приведен простой пример кода для обеих библиотек.

Читать далее
Всего голосов 4: ↑2 и ↓20
Комментарии6

Использование цвета в терминале

Время на прочтение7 мин
Количество просмотров7.2K

Я пишу небольшие скрипты для работы в программах-оболочках «Windows PowerShell» версии 5.1 и «PowerShell» версии 7 в операционной системе «Windows 10». Иногда тянет подсветить текстовый вывод в консоль разными цветами. В этой статье я хочу рассказать о паре грабель, на которые можно при этом наступить.

Читать далее
Всего голосов 12: ↑12 и ↓0+12
Комментарии5

Истории

SQL Server & Powershell: быстро, просто, параллельно. И больше не нужно выбирать 2 из 3-х

Время на прочтение11 мин
Количество просмотров7.9K

В настоящей статье описывается процесс параллельного выполнения операций над объектами базы данных Microsoft SQL Server (таблицы, индексы и т.д.) с использованием инструментария Powershell. Наиболее часто используемый сценарий - обслуживание таблиц в базе, но возможно исполнение любых ваших запросов в параллельном режиме. Если для вас это интересно, то...

...добро пожаловать
Всего голосов 4: ↑4 и ↓0+4
Комментарии2

PowerShell: парсер HTML, устаревшие методы

Время на прочтение5 мин
Количество просмотров5.8K

Обзор двух устаревших методов преобразования кода на языке HTML в объект (HTML-парсер) на скриптовом языке PowerShell в операционной системе Windows 10.

Читать далее
Всего голосов 2: ↑2 и ↓0+2
Комментарии5

Out-GridView with Custom Columns

Время на прочтение3 мин
Количество просмотров1.3K

Командлет Out-GridView можно использовать как универсальный диалоговый интерфейс, для этого предназначены параметры -OutputMode и -PassThru. С ними окно табличного представления (грид) отображает справа внизу дополнительные кнопки, и вы можете передать следующим командлетам выбранные строки.

Читать далее
Всего голосов 3: ↑3 и ↓0+3
Комментарии0

Как определить версию Windows?

Время на прочтение5 мин
Количество просмотров20K

Как же определить версию Windows, работающую в корпоративном окружении?

Вопрос кажется простым, правда?

Microsoft позволяет определить номер версии Windows различными способами:

  • Существуют значения в реестре, которым отчаянно не хватает документации.
  • Есть множество командлетов PowerShell, вызовов Windows API и т. п.
  • Также есть варианты для конечного пользователя, например, команда winver, которая вызывает всплывающее окно с версией Windows.
  • И много других способов…

Разобраться во всём этом вам поможет наш пост.
Читать дальше →
Всего голосов 44: ↑37 и ↓7+30
Комментарии16

Как подружить openssl и powershell, или подпись на основе RSA для самых маленьких

Время на прочтение6 мин
Количество просмотров5K

В один прекрасный день наш сертификат подписи кода протух.

Ну протух и протух, случается. У нас же есть новый сертификат! Щас переподпишем, и всё заработает!

А вот и нет. У нового сертификата - новая цепочка доверия, а владельцы системы куда мы ставимся не настроены устанавливать сертификаты от (в принципе весьма известного) CA в своё хранилище доверенных сертификатов.

Но они готовы использовать на своей стороне скрипт на powershell, который будет проверять валидность, а потом устанавливать без проверки подписей. Да и мы хотим быть уверены, что устанавливаться будет именно наш код. А пакуем мы код на машине, на которую powershell ставить не хочется.

Так что призовём на помощь криптографию, и набьём немного шишек.

Читать далее
Всего голосов 2: ↑1 и ↓10
Комментарии0

4 PowerShell-скрипта для проверки действительности ваших SSL-сертификатов

Время на прочтение45 мин
Количество просмотров7.7K

Привет, Хабр! Меня зовут Андрей Благов, я архитектор центра профессиональных сервисов и R&D в облачном провайдере T1 Cloud, и сегодня речь пойдет о сертификатах SSL. Добавляйте статью в закладки, она вам точно пригодится. В ней я поделюсь PowerShell-скриптами для проверки действительности SSL-сертификатов.

А если ваш отдел мониторинга не находит на вас время, но перед вами стоит задача автоматизировать рутинные процессы — подписывайтесь на наш блог. В дальнейшем я планирую делиться личным опытом и рассказывать о том, как с помощью PowerShell можно наладить выгрузки отчетов, создавать проверки и оповещения по различным условиям.

Читать далее
Всего голосов 11: ↑9 и ↓2+7
Комментарии3

Создание и использование собственных атрибутов AD в PowerShell

Время на прочтение7 мин
Количество просмотров7.5K

В этой статье я покажу вам, как можно расширять схему AD, создавать нестандартные атрибуты и управлять ими в AD — и всё это с помощью Windows PowerShell. Следуя этому руководству, вы сможете устанавливать и управлять собственными атрибутами AD с помощью PowerShell точно так же, как вы управляете другими атрибутами AD.

Стандартная схема Active Directory содержит большинство атрибутов, которые обычно требуются организации в инфраструктуре AD. Однако стандартных атрибутов не всегда достаточно, когда речь идёт о больших организациях. Когда я управлял Active Directory в крупной школе, меня попросили установить несколько атрибутов для пользователей, которые не были доступны в AD по умолчанию. Тогда мне пришлось расширять схему AD для определения кастомных атрибутов и устанавливать эти атрибуты для пользователей.
Читать дальше →
Всего голосов 15: ↑14 и ↓1+13
Комментарии1

Использование PowerShell с $PSStyle

Время на прочтение5 мин
Количество просмотров4.5K

В PowerShell 7.2 появилась автоматическая переменная $PSStyle для новой функции под названием PSAnsiRendering. В этой статье я покажу, как можно использовать ANSI-рендеринг для управления оформлением текста, например цветом и стилизацией шрифта, в PowerShell.

Уже некоторое время мы можем использовать в сеансе PowerShell escape-последовательности ANSI. Вы уже могли наблюдать это при вводе команд в командной строке. Команды, параметры, строки и операторы отображаются цветом. Эти цвета определяются как опции PSReadline.
Читать дальше →
Всего голосов 13: ↑11 и ↓2+9
Комментарии3

Как мы делали сквозную аналитику из 1C в Power BI

Время на прочтение7 мин
Количество просмотров15K

В странах СНГ, принято создавать отчеты о деятельности компании в сводных таблицах Excel. Сказать, что это не юзабельно и не юзерфрендли для сложных отчётов – ничего не сказать. 

Можно, конечно, попытаться как-то спасти положение различными графиками диаграмм, поэкспериментировать с VBA, попробовать с его помощью создать дашборд на стероидах, но надо быть готовым к тому, что графика будет начала нулевых, а сам отчёт скорее всего не будет интерактивным. Помимо этого, такие гибриды смотрятся некрасиво на мобильных устройствах и чаще всего оказываются совсем нечитабельными. Проблемой посерьёзнее является частота заполнения данных – раз в месяц, в лучшем случае. Это приводит к тому, что руководитель не может смотреть на положение бизнеса в режиме реального времени и предотвращать проблемы. Ему приходится мириться с положением дел в конце каждого месяца и решать всплывшие проблемы. Столько негатива, а ведь мы ещё даже не перешли на стадию автоматизации выгрузки данных в Excel, где и таятся все «черти» этого тихого омута.

В связи с этим, мы решили поделиться нашим опытом, чтобы помочь наибольшему количеству начинающих специалистов справиться с задачей подключения 1С к Power BI.  

Читать далее
Рейтинг0
Комментарии5

Ближайшие события

Извлечение хэша NTLM с помощью профилей PowerShell

Время на прочтение8 мин
Количество просмотров12K

Метод повышения привилегий, продемонстрированный в этой статье, является вариантом, используемым шпионскими группами. В нем описывается возможность использования злоумышленниками встроенных функций PowerShell для выполнения произвольных команд в контексте с повышенными правами (правами Администратора). Ниже приведена демонстрация извлечения хэшей NTLM.
Читать дальше →
Всего голосов 4: ↑3 и ↓1+2
Комментарии10

Автоматическая раздача прав на файловом сервере

Время на прочтение22 мин
Количество просмотров16K

В 2021 году все еще многие компании используют файловые серверы для совместной работы, поэтому остается актуальным вопрос разграничения доступа на общих ресурсах.

Как правильно организовать доступ к файловым ресурсам описано в Best Practices от Microsoft, в том числе и в документе Windows Productivity for IT Professionals из Microsoft Resource Kit. В Сети можно найти множество статей на русском языке по организации файлового сервера, в том числе и на Хабре.

Например, вот эти:

Аспирин от настройки прав на файловом сервере
Правила хорошего тона для дизайна разрешений на файловых серверах

В статьях хорошо описано, что необходимо создавать группы доступа в Active Directory и уже потом раздавать права на папки шары этим группам и в свою очередь в эти группы доступа помещать пользователей или ролевые группы. Подход достаточно здравый и применим в большинстве практических ситуаций.

А что делать, если необходимо, раздать доступ на ресурсе, в котором 200 папок? И таких ресурсов у вас несколько штук.

Читать далее
Всего голосов 6: ↑6 и ↓0+6
Комментарии18

Непопулярный pwsh

Время на прочтение5 мин
Количество просмотров5.5K

Несмотря на уже довольно давно пройденный рубеж одной операционной системы, PowerShell (далее просто pwsh) по-прежнему не занимает топовых позиций среди прочих языков, что, впрочем, нисколько не смущает киберпреступность. Первый зловред был написан ещё во времена первого поколения могучего шелла, затем были различного рода постэксплуатационные "фреймворки" для скомпрометированных систем, ну а там уж и анекдотов насочиняли. В смысле, была понаписана масса ненужного в информационном плане барахла вроде tips of day или how to do. Иными словами, информационная безопасность в контексте pwsh грозила перерасти в некий stand up, если бы не внезапно для многих случившаяся кроссплатформенность, на которой-то и споткнулись ряд проектов, не говоря уже о матёрых скриптописателях. Как ни странно, но в большинстве статей посвящённых расследованию инцидентов компрометации систем посредством pwsh используется пятая версия последнего. Между тем малварь, написанная на pwsh, существует и под Linux, и под MacOS, что великодушно игнорируется некоторыми ИБ экспертами, - винить во всём Microsoft уже не столько необходимо, сколько вошло в привычку.

Читать далее
Всего голосов 5: ↑5 и ↓0+5
Комментарии1

WebSCO — альтернативная консоль для System Center Orchestrator

Время на прочтение3 мин
Количество просмотров1.7K

Наверное всем не нравится консоль для запуска ранбуков у Microsoft System Center Orchestrator. Она неудобная и тормозная. Давно вынашивал идею сделать что-то более удобное, избавиться от Silverlight и... наконец-то подвернулась возможность её реализовать.

Читать далее
Рейтинг0
Комментарии0

Представляем Windows Terminal Preview 1.11

Время на прочтение3 мин
Количество просмотров9.5K

Поздравляем с днем выпуска Windows Terminal! В этом выпуске Windows Terminal Preview перешел в версию 1.11 и Windows Terminal в 1.10. Все функции из предыдущей версии теперь переходят в основной Windows Terminal, за исключением настроек терминала по умолчанию, страницы редактируемых действий и страницы Defaults пользовательского интерфейса настроек. Обе сборки терминала можно установить из Microsoft Store или со страницы выпусков GitHub. Давайте узнаем, что нового!

Читать далее
Всего голосов 13: ↑11 и ↓2+9
Комментарии26

Microsoft Graph API Requests или иной способ управления Microsoft 365

Время на прочтение4 мин
Количество просмотров2.1K

Довольно часто приходят задачи написать скрипты для Microsoft 365, будь то репортинг или какие-то автоматизации. Как правило, сервисы входящие в пакет M365: Exchange Online, SharePoint Online или Microsoft Endpoint Manager - имеют свои отдельные модули для работы с ними из PowerShell. Однако возникают ситуации, когда функционала этих модулей недостаточно. В таких случаях остается либо ждать, когда этот функционал все же появится, либо писать скрипты под Graph API самому. Как правило это 2–3 функции основные, и множество их вариаций. В какой-то из дней при шедулинге очередного такого скрипта в голову прокралась идея, а почему бы не написать свой модуль для подобного рода запросов? Причем такой, который не ограничивался бы списком каких-то конкретных команд, и такой, чтобы если появилась какая-то новая функция, тем кто будет пользоваться этим модулем не пришлось бы ждать обновления со стороны разработчика. В итоге на свет появился Graph API Requests,  модуль, который позволяет делать практически любого вида запросы к Microsoft Graph API, доступные и описанные в официальной документации Microsoft используя PowerShell.

Читать далее
Рейтинг0
Комментарии0

Установка WSL с помощью одной команды стала доступна в Windows 10

Время на прочтение2 мин
Количество просмотров23K

В последних сборках Windows Insider Preview вы можете установить все необходимое для запуска WSL, просто выполнив wsl.exe --install. Мы рады сообщить, что эта функция теперь официально перенесена в Windows 10 версии 2004 и выше, что значительно упростит установку WSL в этих сборках.

Читать далее
Всего голосов 8: ↑7 и ↓1+6
Комментарии10