PowerShell Core 6.0 Beta.4


Вы уже можете скачать и протестировать PowerShell Core 6.0 Beta.4!

Из особо приятного — улучшена поддержка модулей Windows PowerShell. Если ещё в Beta.3 половина модулей вообще не загружалась, то сейчас около 80% модулей загружаются успешно — 96 из 113. Ждем исправления бага в .Net Core, что позволит нам загружать модули PS1XML. Первоисточник https://github.com/PowerShell/PowerShell/issues/4062.

Особо надо отметить, что теперь вы можете загружать модули Exchange и Sharepoint! Я уже попробовал их в работе — класс!

Также надо отметить, что оптимизирована работа консоли — теперь она работает быстрее за счет уменьшения количества выводимой служебной информации (esc-последовательностей).

Была добавлена конструкция для указания Unicode-символов `u{unicode-код}. Это работает не только в строковых константах, но и в именах (переменных, функций и т.п.). Первоисточник https://github.com/PowerShell/PowerShell/pull/3958.

 

Task Scheduler и gMSA


Решил привести в порядок запускаемые по расписанию задачи. Для консолидации таких задач существует продукт SCOR. Microsoft прекратила его развитие, хотя не так давно переписала номер версии на 2016. Но история не об этом. Читать далее

PowerShell 6 -$env:PSModulePath


PowerShell 6.0 изначально разрабатывается как мультиплатформенный и портированный на Unix системы.

Windows и Unix системы изначально различаются в некоторых вещах. Например, по умолчанию Unix системы практически везде чувствительны к регистру, а Windows нет.

Это касается и переменных окружения. Если в Windows мы можем написать имя переменной окружения в любой комбинации больших и маленьких букв, то на Unix системе поиск переменной окружения будет выполняться с учётом регистра букв. Если мы хотим, чтобы скрипт работал без изменений на обеих плаформах, то используемые имена переменных окружения должны быть в точности одинаковыми и на Windows, и на Unix.

В частности PowerShell использует переменную окружения PSModulePath для поиска модулей. После обсуждения разработчики PowerShell приняли решение, что эта переменная окружения на обеих платформах должна писаться в форме — PSModulePath.

 

О проблемах установки обновлений


Своевременная установка обновлений это хорошая профилактика от вирусных атак. Это ещё раз подтверждает последння волна червей, начавшаяся с WannaCry.

И вот вроде бы все нужные обновления регулярно ставим, но червь как-то просочился на несколько компьютеров. По совокупности защитных мер ничего страшного не произошло, тем не менее выводы на будущее надо было сделать. Читать далее

Путь развития PowerShell Core


В настоящее время есть два PowerShell — Windows PowerShell и PowerShell Core. Сразу возникает вопросы: как они соотносятся? что будет в будущем с каждой версией?

PowerShell Core это «fork» или ответвление Windows PowerShell сделанное в определенный момент с целью портирования на Unix системы.

Windows PowerShell базируется на .Net Framework — внутренней реализации стандарта .Net Standard компанией Microsoft. Читать далее