Издаден PowerShell 7 Preview 5, ето какво е новото
Microsoft пуска нова версия за предварителен преглед на следващото поколение скриптов език PowerShell. Интересните потребители могат да получат Preview 5 на PowerShell 7. Той съдържа редица нови функции и много корекции на грешки както от общността, така и от екипа на PowerShell.
PowerShell е усъвършенствана форма на команден ред. Той е разширен с огромен набор от готови за използване командлети и идва с възможност за използване на .NET framework/C# в различни сценарии. Windows включва GUI инструмент, PowerShell ISE, който позволява редактиране и отстраняване на грешки в скриптове по полезен начин.
PowerShell 7 е първата обвивка на командния ред и пакет за скриптов език, базиран на .NET Core 3.0. Може да постигне съвместимост с 90+% от входящата кутия на Windows Модули на PowerShell чрез използване на промени в .NET Core 3.0, които връщат много API, изисквани от модулите, изградени върху .NET Framework, така че да работят с .NET Core време на изпълнение.
Microsoft е на път да пусне още една версия за предварителен преглед следващия месец през ноември. След това, с изключение на каквито и да било опасения за качеството, кандидат за освобождаване през декември се приведе в съответствие с
.NET Core 3.1 окончателно издание. И накрая, те очакват общата наличност на PowerShell 7 през януари като първата им версия за дългосрочно обслужване.Между Release Candidate и General Availability, Microsoft ще приема само критични корекции на грешки и няма да бъдат включени нови функции. За това издание някои Експериментални характеристики ще се счита за стабилен дизайн и вече няма да бъде експериментален. Това означава, че всички бъдещи промени в дизайна на тези функции ще се считат за критична промяна.
Нови функции в Preview 5
Тази версия има редица нови функции както от общността, така и от екипа на PowerShell. Изданията за предварителен преглед на PowerShell могат да се инсталират успоредно със стабилни версии, така че да можете да използвате и двете.
Верижни оператори
Новото Оператори на тръбопроводна верига позволява условно изпълнение на команди в зависимост от това дали предишната команда е успешна за неуспешна. Това работи както с собствени команди, така и с командлети или функции на PowerShell. Преди тази функция вече бихте могли да направите това, като използвате ако
изявления заедно с проверка дали $?
посочи, че последното изявление е било успешно или неуспешно. Този нов оператор прави това по-лесно и съвместимо с други обвивки.
Нулеви условни оператори за обединяване и присвояване
Често във вашите скриптове може да се наложи да проверите дали променливата е $null или дали дадено свойство е $null, преди да я използвате. Новите условни оператори Null правят това по-лесно.
Новото ??
нулев коалесциращ оператор премахва необходимостта от ако
и друго
оператори, ако искате да получите стойността на израз, ако не е $null, или да върнете нещо друго, ако е $null. Имайте предвид, че това не заменя проверката за булева стойност на true или false, а само проверява дали е $null.
Новото ??=
Операторът за условно присвояване null улеснява присвояването на стойност на променлива само ако не е $null.
Известие за нова версия на PowerShell
Използвайки телеметрия, екипът установи, че много потребители използват остарели версии на PowerShell. Започвайки с PowerShell 7, конзолата ще рекламира нова версия, където е налична.
Повече подробности за тази функция, включително как да я деактивирате в Уведомление за RFC за актуализиране на версията
Завършване на раздел за присвояване на променлива
Тази нова функция ще ви позволи да използвате завършване на раздели при присвояване на променливи и да получавате разрешени стойности за изброявания или променливи с ограничения на типа като [ValidateSet()]
. Това го прави лесна за промяна $ErrorActionPreference
или новото $ErrorView
(подробно по-долу) до валидни стойности, без да се налага да ги въвеждате.
Format-Hex подобрено форматиране
Това подобрение идва от Джоел Салоу правене Формат - шестнадесетичен
по-полезно при разглеждане на различни типове обекти в конвейер, както и поддържане на преглед на повече типове обекти.
Get-HotFix се завръща
В Вземете HotFix
cmdlet работи само на Windows и ще запитва системата какви пачове са инсталирани. Това преди не беше налично в PowerShell Core 6, защото зависеше от Система. Пространство от имена за управление който не беше наличен в .NET Core 2.x, върху който е изграден PowerShell Core 6.x. Въпреки това, .NET Core 3.0, върху който е изграден PowerShell 7, върна това пространство от имена (само за Windows), така че активирахме отново този командлет.
В този пример има забавяне при получаване на резултати поради броя на пачовете, които авторът има на своята Windows 7 VM.
Select-String добавя акцент
Това беше а Хак Илинойс проект от Дерек Ся който използва текст с обърнат цвят, за да подчертае текста в низ, който отговаря на критериите за избор. Има опция -Без наблягане
превключете, за да потиснете акцента.
ConciseView за грешки
Някои потребителски отзиви, които постоянно получаваме, са относно количеството червен текст, което получавате, когато срещнете грешка в PowerShell.
В $ErrorView
променливата за предпочитания ви позволява да промените форматирането на грешките. Преди това поддържаше NormalView
(по подразбиране), както и по-кратко CategoryView
. Тази функция добавя a ConciseView
където повечето команди връщат само съответното съобщение за грешка. В случаите, когато има допълнителна контекстна информация във файл на скрипт или местоположението в скрипт блок, получавате номера на реда, въпросния ред с текст и указател към мястото на грешката се случи.
Този нов изглед е част от Актуализиране на грешка Преглед на RFC така че, моля, дайте обратна връзка там.
Командлет Get-Error
Докато ConciseView
ви дава по-точна, но ограничена информация за грешки, добавихме нов командлет Получаване на грешка
за да получите много по-богата информация за грешките.
По подразбиране просто работи Получаване на грешка
показва форматиран изглед на най-новата грешка, включително показване на специфични вложени типове като Exceptions и ErrorRecords, което улеснява диагностицирането на какво се е объркало.
Този нов командлет е част от Актуализиране на грешка Преглед на RFC така че, моля, дайте обратна връзка там.
PowerShell 7 е настроен да се актуализира на месечна база, така че потребителите могат да очакват повече версии за преглед на скриптовия език, преди да достигне общодостъпност почти месец след .NET Core 3.0.
Също така, вижте Бележки към изданието за всички подробности за това, което е включено в това издание.
Източник: Microsoft