Microsoft представила командную оболочку PowerShell 7.0 для Windows, Linux и macOS
Microsoft представила командную оболочку PowerShell 7.0 для Windows, Linux и macOS
Microsoft представила выпуск командной оболочки PowerShell 7.0, исходные тексты которой были открыты в 2016 году под лицензией MIT. Новый выпуск оболочки подготовлен не только для Windows, но и для Linux и macOS.
PowerShell оптимизирован для автоматизации выполнения операций в командной строке и предоставляет встроенные средства для обработки структурированных данных в таких форматах, как JSON, CSV и XML, а также поддерживает REST API и объектные модели. Помимо командной оболочки предлагается объектно-ориентированный язык для разработки сценариев и набор утилит для управления модулями и скриптами. Начиная с ветки PowerShell 6 проект развивается с использованием платформы .NET Core. По умолчанию PowerShell передаёт телеметрию с описанием ОС и версией программы (для отключения телеметрии необходимо выставить переменную окружения POWERSHELL_TELEMETRY_OPTOUT=1 перед запуском).
Среди новшеств, добавленных в PowerShell 7.0:
- Поддержка распаралелливания каналов (pipeline) при помощи конструкции "ForEach-Object -Parallel";
- Оператор условного присвоения "a ? b : c";
- Операторы условного запуска потоков "||" и "&&" (например, cmd1 && cmd2, вторая команда будет выполнена только при успешном выполнении первой);
- Логические операторы "??" и "??=", которые возвращают правый операнд, если левый операнд имеет значение NULL (например, a = b ?? "default string" если b равен null, оператор вернёт стоку со значением по умолчанию).
- Улучшенная система динамического просмотра ошибок (Get-Error cmdl);
- Прослойка для совместимости с модулями для Windows PowerShell;
- Автоматический вывод уведомления о появлении новой версии;
- Возможность вызова ресурсов DSC (Desired State Configuration) напрямую из PowerShell.
