Работа с локальными учётными записями в Powershell

Я когда-то уже рассказывал как неудобно работать с локальными учётными записями пользователей в Powershell. Раньше для этого приходилось использовать не совсем удобный ADSI. С выходом Powershell 5.1, наконец-то, появились стандартные командлеты для управления учётными записями.

Тег «Далее»

Рубрики:Powershell Метки:

Использование пользовательских областей в Powershell

При написании скриптов Powershell бывают случаи, когда нужно на время изменить значение переменной, а затем восстановить исходное значение. Например, переопределить реакцию Powershell на возникновение не прерывающей ошибки. За это отвечает переменная $ErrorActionPreference. (Подробнее об этой и других переменных, которые задают поведение Powershell можно почитать, например на Technet.) Как правило в таком случае сохраняют исходное значение во временной переменной, а после выполнения определённых действий – восстанавливают:

"Исходное значение ErrorActionPreference - $ErrorActionPreference"

# Сохраняем исходное значение переменной во временную переменную
$ErrorActionPreferenceOLD = $ErrorActionPreference

# Меняем значение переменной на нужное
$ErrorActionPreference = 'stop'

"Изменённое значение ErrorActionPreference - $ErrorActionPreference"
# Выполняем какие-то действия...

# Восстанавливаем исходное значение переменной
$ErrorActionPreference = $ErrorActionPreferenceOLD

"Восстановленное значение ErrorActionPreference - $ErrorActionPreference"

В результате получим изменённое на время значение переменной:

Исходное значение ErrorActionPreference         - Continue
Изменённое значение ErrorActionPreference       - Stop
Восстановленное значение ErrorActionPreference  - Continue

Этого же результата можно добиться более простым путём.

Тег «Далее»

Рубрики:Powershell Метки:

Использование IntelliSense в Powershell ISE

Так получилось, что с самого появления Powershell у меня не получилось дружбы с встроенным редактором скриптов Powershell ISE, и почти все скрипты я писал используя сторонние редакторы. С каждой новой версией Powershell рос и обрастал функционалом и Powershell ISE, я за его развитием следил, но издалека – при появлении каждой новой фишки каждый раз говорил себе: “Прикольно, нужно будет попробовать”. Этим дело и ограничивалось.

Как говорится не было счастья, да несчастье помогло. Случилось так, что мне понадобилось срочно набросать небольшую конфигурацию на чужом компьютере, на котором не было не только какого-либо стороннего редактора скриптов, но даже интернета. А так как последние несколько месяцев конфигурации я не писал, и вообще голова была забита другими проблемами, то вполне очевидно, что структуру конфигурации, которую я подробно разбирал в одной из предыдущих статей я подзабыл. Поэтому ничего не оставалось кроме как воспользоваться советом, который услышал в каком-то курсе от Мастера джедая Powershell Джеффри Сновера: “Use IntelliSense, my friend, use IntelliSense”.

Сегодняшняя небольшая статья будет посвящена тому как можно использовать IntelliSense в Powershell ISE при написании скриптов. Для тех, кто постоянно работает с Powershell ISE, наверное, будет неинтересно, остальные, надеюсь, найдут для себя что-то новое.

Тег «Далее»

Рубрики:Powershell Метки: ,

Изменение цветов системных сообщений в Powershell

Небольшая заметка о том, как можно изменить стандартные цвета системных сообщений в Powershell.

Тег «Далее»

Рубрики:Powershell Метки:

Перезапуск службы печати на удалённом ПК

Недавно ко мне обратился человек с просьбой помочь в написании скрипта для перезапуска службы печати для того, чтобы очистить очередь печати от “застрявших” заданий – которые не печатаются, не отменяются и не удаляются. Мне это показалось банальным и скучным, поэтому я предложил сделать это сразу для удалённого компьютера.

Тег «Далее»

Рубрики:Powershell Метки: , , ,

Создание локального пользователя через Powershell

Недавно прочёл хорошую статью, в которой пошагово рассматривался процесс создания локальной (не доменной) учётной записи администратора на компьютере. Пока читал вспомнил, что давно хотел написать скрипт, который будет создавать скрытую учётку админа для удалённого администрирования, всё не хватало волшебного пендаля стимула. Так что сегодня будем учиться создавать локальных пользователей на компьютере. А чтобы было ещё веселее, будем создавать локального пользователя на удалённом компьютере.

Тег «Далее»

Рубрики:Powershell Метки: ,

И вновь о массивах и циклах

Ещё одна небольшая заметка на тему как ускорить работу с Powershell.

Тег «Далее»

Рубрики:Powershell Метки: