Lista nowych funkcji programu PowerShell 7

Kolejna główna wersja PowerShell jest już dostępna i wprowadza kilka istotnych zmian. Wersja siódma zawiera funkcje, takie jak wykonywanie równoległe, importowanie modułów do zdalnego wykonywania, nowe operatory i nie tylko. W tym poście przyjrzymy się wszystkim nowym(New) funkcjom w PowerShell 7.0 .

Funkcje PowerShell 7

Zmiany w katalogu PowerShell

Po zainstalowaniu PowerShell 7(install PowerShell 7) zainstaluje się on w nowym katalogu i będzie działał wraz z PowerShell 5.1 . Jeśli aktualizujesz z PowerShell Core 6.x , nadpisze on katalog PowerShell 6 i usunie wszystkie niepotrzebne pliki. Oto lista katalogów, które powinieneś znać:

PowerShell 7 jest zainstalowany, aby:

%programfiles%\PowerShell\7

Folder  %programfiles%\PowerShell\7 zostanie dodany do $env:PATH

Pakiety instalatora PowerShell 7 aktualizują poprzednie wersje PowerShell Core 6.x :

PowerShell Core 6.x w systemie Windows:(PowerShell Core 6.x on Windows:)

%programfiles%\PowerShell\6

zastępuje  

%programfiles%\PowerShell\7

Linux:

/opt/microsoft/powershell/6

zastępuje  

/opt/microsoft/powershell/7

macOS: (macOS: )

/usr/local/microsoft/powershell/6

jest zastąpiony przez

/usr/local/microsoft/powershell/7

Nowe funkcje w PowerShell 7

Próbowałem wyjaśnić każdą z tych funkcji w skrócie i jak to pomoże użytkownikom (users)PowerShell . Pamiętaj jednak, aby przeczytać bardziej szczegółowo na oficjalnej stronie Microsoft .

  1. Równoległość rurociągu
  2. Nowi operatorzy
  3. Polecenia cmdlet ConciseView i Get-Error
  4. Automatyczne powiadomienia o nowej wersji
  5. Wywołaj(Invoke DSC) zasoby DSC bezpośrednio z PowerShell 7
  6. Warstwa kompatybilności

Zawsze sprawdzaj zmienną środowiskową(Environment Variable) przed testowaniem rzeczywistych kodów.

1] Równoległość rurociągu

Możesz teraz wykonywać lub obsługiwać obiekty równolegle zamiast metody sekwencji podczas korzystania z ForEach-Object -Parallel. W naszym poście na temat odinstalowywania WIM ta metoda może odmontować trzy obrazy WIM w niecałe 10 sekund zamiast prawie 25 sekund podczas uruchamiania w sekwencji. Oto przykładowy kod na to:

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

2] Nowi operatorzy

Pojawiły się trzy nowe operatory — Ternary operator: a ? b : c, Pipeline chain operators: || and && and Null conditional operators: ?? and ??=.Zachowują się one tak, jak zachowuje się jak uproszczona instrukcja if-else. (behaves like a simplified if-else statement.)Ułatwiają pisanie kodu zamiast ciągłego używania pętli If-else.

3] Polecenie cmdlet ConciseView i Get-Error

Pobierz polecenie błędu Niech PowerShell 7

ConciseView to widok wybierany przez użytkownika, który jest włączony jako domyślny widok programu PowerShell 7 . Jeśli błąd nie pochodzi ze skryptu, otrzymasz jednowierszowy błąd. Jeśli jednak pochodzi ze skryptu lub wystąpi błąd parsowania, otrzymasz wielowierszowy komunikat o błędzie oraz wskaźnik pokazujący, w którym wierszu wystąpił błąd.

Następnie masz nowe polecenie cmdlet Get-Error , które w razie potrzeby może pomóc w uzyskaniu szczegółowego widoku błędu. Może wyświetlać pełne szczegóły, w tym wewnętrzne wyjątki, ostatniego błędu, który wystąpił.

$Error | Get-Error

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

4 ] Automatyczne(] Automatic) powiadomienia o nowej wersji

Począwszy od PowerShell 7 , system będzie raz dziennie sprawdzał dostępność aktualizacji i powiadamiał o nowej wersji, jeśli jest dostępna. Informacje pokazywane są dopiero na początku kolejnych sesji. Dostępne są trzy flagi dla aktualizacji PowerShell(PowerShell Update)

  • Domyślne(Default ) wersje GA, Preview i RC
  • Off  wyłącza funkcję powiadamiania o aktualizacjach
  • LTS Â powiadamia tylko o aktualizacjach długoterminowych wersji GA ( LTS )

Jeśli chcesz wyłączyć powiadomienia o aktualizacjach w PowerShell 7 , wykonaj to polecenie w oknie PowerShell .

$Env:POWERSHELL_UPDATECHECK = 'Off'

5] Wywołaj(Invoke DSC) zasoby DSC bezpośrednio z PowerShell 7

Polecenie cmdlet Invoke-DscResource(Invoke-DscResource) uruchamia  metodę określonego zasobu konfiguracji żądanego stanu programu PowerShell(PowerShell Desired State Configuration) ( DSC ). Jest to funkcja eksperymentalna.

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] Warstwa kompatybilności

Umożliwia użytkownikom programu PowerShell importowanie modułów w niejawnej sesji programu Windows PowerShell . (Windows PowerShell)Korzystając z tego, będziesz mógł wykonać prawdziwe polecenie jako sesję na zdalnym komputerze i zwrócić wyniki do sesji lokalnej. Teraz, gdy obsługuje importowanie modułów, możesz je uruchamiać na zdalnych komputerach.

PowerShell to oprogramowanie typu open source dostępne również w systemach Linux(Linux) i macOS. Wspaniale jest widzieć tak wiele nowych funkcji w PowerShell 7 i mamy nadzieję, że będzie się rozwijać. Więcej na ten temat można przeczytać na stronie Microsoft(about it on Microsoft) .



About the author

Witam potencjalnych pracodawców! Jestem bardzo doświadczonym inżynierem oprogramowania z ponad 7-letnim doświadczeniem w branży. Wiem, jak projektować i rozwijać aplikacje dla systemu Windows 7, a na swoim profilu mam szeroki wybór rekomendacji Cool Websites. Moje umiejętności i doświadczenie oferują mi doskonałe dopasowanie do każdej firmy poszukującej utalentowanej osoby z dobrymi umiejętnościami zarządzania projektami, wiedzą programistyczną i doświadczeniem w tworzeniu stron internetowych.



Related posts