ΠΠΎΠΌΠΏΠ°Π½ΠΈΡ Microsoft ΠΈΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π΅Π½ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ , ΡΠΈΠΉΡΠΎ ΠΈΠ·Ρ ΠΎΠ΄Π΅Π½ ΠΊΠΎΠ΄ Π±Π΅ΡΠ΅ ΠΏΡΠ±Π»ΠΈΠΊΡΠ²Π°Π½ ΠΏΡΠ΅Π· 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 ?? Β«ΡΡΡΠΈΠ½Π³ ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅Β» Π°ΠΊΠΎ b Π΅ ΡΠ°Π²Π½ΠΎ Π½Π° null, ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡΡ ΡΠ΅ Π²ΡΡΠ½Π΅ ΡΡΡΡΠ½Π³Π° ΡΡΡ ΡΡΠΎΠΉΠ½ΠΎΡΡ ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅).
- ΠΠΎΠ΄ΠΎΠ±ΡΠ΅Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ° Π·Π° Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ½ΠΎ Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° Π³ΡΠ΅ΡΠΊΠΈ (Get-Error cmdl);
- Π‘Π»ΠΎΠ΅Π²Π΅ Π·Π° ΡΡΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡ Ρ ΠΌΠΎΠ΄ΡΠ»ΠΈ Π·Π° Windows PowerShell;
- ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΡΠ½ΠΎ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠ΅ Π·Π° Π½Π°Π»ΠΈΡΠΈΠ΅ΡΠΎ Π½Π° Π½ΠΎΠ²Π° Π²Π΅ΡΡΠΈΡ;
- ΠΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ Π½Π° ΡΠ΅ΡΡΡΡΠΈ DSC (Desired State Configuration) Π΄ΠΈΡΠ΅ΠΊΡΠ½ΠΎ ΠΎΡ PowerShell.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru
