PowerShell 7 Списък с нови функции

Излезе следващата голяма версия на PowerShell и внася някои значителни промени. Седмата версия включва функции като паралелно изпълнение, импортиране на модули за дистанционно изпълнение, нови оператори и др. В тази публикация разглеждаме всички нови(New) функции на PowerShell 7.0 .

Функции на PowerShell 7

Промени в директорията на PowerShell

Когато инсталирате PowerShell 7(install PowerShell 7) , той ще се инсталира в нова директория и ще работи заедно с PowerShell 5.1 . Ако надграждате от PowerShell Core 6.x , тогава той ще презапише директорията PowerShell 6 и ще премахне всички ненужни файлове. Ето списъка с директории, които трябва да знаете:

PowerShell 7 е инсталиран за-

%programfiles%\PowerShell\7

Папката  %programfiles%\PowerShell\7 се добавя към $env:PATH

Инсталационните пакети на PowerShell 7 надграждат предишни версии на PowerShell Core 6.x :

PowerShell Core 6.x на Windows:(PowerShell Core 6.x on Windows:)

%programfiles%\PowerShell\6

се заменя с 

%programfiles%\PowerShell\7

Linux:

/opt/microsoft/powershell/6

се заменя с 

/opt/microsoft/powershell/7

macOS: (macOS: )

/usr/local/microsoft/powershell/6

се заменя с

/usr/local/microsoft/powershell/7

Нови функции в PowerShell 7

Опитах се да обясня накратко всяка от тези функции и как ще помогне на потребителите на (users)PowerShell . Въпреки това, не забравяйте да прочетете по-подробно на официалната страница на Microsoft .

  1. Паралелизиране на тръбопроводи
  2. Нови оператори
  3. Командлет ConciseView и Get-Error
  4. Автоматични известия за нова версия
  5. Извикайте DSC(Invoke DSC) ресурси директно от PowerShell 7
  6. Слой за съвместимост

Винаги проверявайте променливата на средата(Environment Variable) , преди да тествате действителните кодове.

1] Паралелизиране на тръбопровод

Вече можете да изпълнявате или обработвате обекти паралелно вместо метода на последователността, когато използвате ForEach-Object -Parallel. В нашата публикация за деинсталиране на WIM този метод може да демонтира три WIM изображения за малко под 10 секунди вместо за почти 25 секунди, когато работи последователно. Ето примерен код за него:

Get-WindowsImage -Mounted | foreach -Parallel {Measure-Command {Dismount-WindowsImage -Discard -Path $_.Path}}

2] Нови оператори

Има три нови оператора – Ternary operator: a ? b : c, Pipeline chain operators: || and && and Null conditional operators: ?? and ??=.Те се държат като опростен оператор if-else. (behaves like a simplified if-else statement.)Те улесняват писането на кода, вместо да използвате цикъла If-else през цялото време.

3] Командлет ConciseView(ConciseView) и Get-Error

Получаване на команда за грешка Нека PowerShell 7

ConciseView е изглед, избиран от потребителя, който е активиран като изглед по подразбиране на PowerShell 7 . Ако грешката не е от скрипта, ще получите грешка в един ред. Ако обаче е от скрипта или има грешка при синтактичен анализ, ще получите съобщение за многоредова грешка и указател, показващ на кой ред е възникнала грешката.

След това имате нов командлет Get-Error , който може да ви помогне да получите подробен изглед на грешката, когато желаете. Той може да показва пълни подробности, включително вътрешни изключения, за последната възникнала грешка.

$Error | Get-Error

Get-Error -Newest 3 # Displays the last three errors that occurred in the session

4 ] Автоматични(] Automatic) известия за нова версия

Започвайки с PowerShell 7 , системата ще проверява за актуализации веднъж на ден и ще уведомява за нова версия, ако е налична. Информацията се показва само в началото на следващите сесии. Има три налични флага за PowerShell Update

  • Издания по подразбиране(Default ) GA, Preview и RC
  • Изключено(Off) Â изключва функцията за известяване за актуализация
  • LTS Â уведомява само за актуализации на версии на GA с дългосрочно обслужване ( LTS )

Ако искате да изключите известията за актуализация в PowerShell 7 , изпълнете тази команда в прозореца на PowerShell .

$Env:POWERSHELL_UPDATECHECK = 'Off'

5] Извикайте DSC(Invoke DSC) ресурси директно от PowerShell 7

Командлетът  Invoke-DscResource изпълнява метод на определен ресурс за конфигурация на желаното състояние на PowerShell(PowerShell Desired State Configuration) ( DSC ). Това е експериментална функция.

Using this cmdlet, configuration management products can manage Windows or Linux by using DSC resources. This cmdlet also enables debugging of resources when the DSC engine is running with debugging enabled.

6] Слой за съвместимост

Той позволява на потребителите на PowerShell да импортират модули в имплицитна сесия на Windows PowerShell . Използвайки това, вие ще можете да изпълнявате истинската команда като сесия на отдалечения компютър и да връщате резултатите на локалната сесия. Сега, когато поддържа импортиране на модули, можете да стартирате тези модули на отдалечени компютри.

PowerShell е софтуер с отворен код, достъпен и за Linux и macOS. Страхотно е да видим толкова много нови функции в PowerShell 7 и се надяваме да продължи да расте. Можете да прочетете повече за това в Microsoft(about it on Microsoft) .



About the author

аудиофил инженер и специалист по аудио продукти с повече от 10 години опит. Специализирам се в създаването на качествени музикални високоговорители и слушалки от началото до края. Аз съм експерт в отстраняването на аудио проблеми, както и в проектирането на нови високоговорители и системи за слушалки. Моят опит надхвърля просто правенето на добри продукти; Също така имам страст да помагам на другите да бъдат възможно най-добрите, независимо дали това е чрез образование или общественополезен труд.



Related posts