Windows PowerShell рдХреНрдпрд╛ рд╣реИ рдФрд░ рдпрд╣ рдХреНрдпрд╛ рдЦрд╛рддрд╛ рд╣реИ? рднрд╛рдЧ 2: рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рдХрд╛ рдкрд░рд┐рдЪрдп

рдРрддрд┐рд╣рд╛рд╕рд┐рдХ рд░реВрдк рд╕реЗ, рдХрдорд╛рдВрдб-рд▓рд╛рдЗрди рдЙрдкрдпреЛрдЧрд┐рддрд╛рдУрдВ рдХреЛ рд╡рд┐рдВрдбреЛрдЬ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдпреВрдирд┐рдХреНрд╕ рд╕рд┐рд╕реНрдЯрдо рдкрд░ рдмреЗрд╣рддрд░ рддрд░реАрдХреЗ рд╕реЗ рд╡рд┐рдХрд╕рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдПрдХ рдирдП рд╕рдорд╛рдзрд╛рди рдХреЗ рдЖрдЧрдорди рдХреЗ рд╕рд╛рде рдЪреАрдЬреЗрдВ рдмрджрд▓ рдЧрдИ рд╣реИрдВред



PowerShell рдХреЗ рд▓рд┐рдП, рдЖрдк рдПрдХ рд╡реНрдпрд╛рдЦреНрдпрд╛ рдХреА рдЧрдИ рдмрд╣реБ-рдкреНрд░рддрд┐рдорд╛рди рднрд╛рд╖рд╛ рдореЗрдВ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рд╕рдореЗрдВ рд╢рд╛рд╕реНрддреНрд░реАрдп рдкреНрд░рдХреНрд░рд┐рдпрд╛рддреНрдордХ, рдСрдмреНрдЬреЗрдХреНрдЯ-рдУрд░рд┐рдПрдВрдЯреЗрдб рдФрд░ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХреЗ рддрддреНрд╡ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ: рд╕рд╢рд░реНрдд рд╢рд╛рдЦрд╛рдУрдВ рдореЗрдВ рдмрдБрдЯрдирд╛, рд▓реВрдк, рдЪрд░, рд╕рд░рдгрд┐рдпрд╛рдБ, рд╣реИрд╢ рдЯреЗрдмрд▓, рдХрдХреНрд╖рд╛рдПрдВ, рддреНрд░реБрдЯрд┐ рд╣реИрдВрдбрд▓рд┐рдВрдЧ, рд╕рд╛рде рд╣реА рдлрд╝рдВрдХреНрд╢рди, cmdlets рдФрд░ рдкрд╛рдЗрдкрд▓рд╛рдЗрдиред ред рдкрд┐рдЫрд▓рд╛ рд▓реЗрдЦ рдПрдХ рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдореВрд▓ рдмрд╛рддреЗрдВ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдкрд┐рдд рдерд╛, рдФрд░ рдЕрдм рд╣рдо рдЕрдкрдиреЗ рдкрд╛рдардХреЛрдВ рдХреЛ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЗ рд▓рд┐рдП рдПрдХ рдЫреЛрдЯрд╛ рдЧрд╛рдЗрдб рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВред

рд╡рд┐рд╖рдп - рд╕реВрдЪреА:


рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ
рдЪрд░ рдФрд░ рдЙрдирдХреЗ рдкреНрд░рдХрд╛рд░
рд╕рд┐рд╕реНрдЯрдо рдЪрд░
рд╕реНрдХреЛрдкреНрд╕
рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ (
рдЕрдВрдХрдЧрдгрд┐рдд ) рдЕрдВрдХрдЧрдгрд┐рдд рдФрд░ рддреБрд▓рдирд╛
рдСрдкрд░реЗрдЯрд░ рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ
рдСрдкрд░реЗрдЯрд░ рддрд╛рд░реНрдХрд┐рдХ рд╕рдВрдЪрд╛рд▓рдХ
рд╕рд╢рд░реНрдд рд╕рдВрдХреНрд░рдордг
рд▓реВрдкреНрд╕
рд╕рд╛рд░рдгреА
рд╣реИрд╢ рддрд╛рд▓
рдХрд╛рд░реНрдп
рддреНрд░реБрдЯрд┐ рд╣реИрдВрдбрд▓рд┐рдВрдЧ рдЖрдк

рдХрд┐рд╕реА рднреА рд╕рдВрдкрд╛рджрдХ рд╕рдВрдкрд╛рджрдХ рдореЗрдВ рдХреЛрдб рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ рдпрд╛ рдПрдХреАрдХреГрдд рд╡рд┐рдХрд╛рд╕ рд╡рд╛рддрд╛рд╡рд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ - рд╕рдмрд╕реЗ рдЖрд╕рд╛рди рддрд░реАрдХрд╛ рд▓реЗ рд╕рдХрддреЗ рд╣реИрдВ Windows PowerShell ISE Microsoft рд╕рд░реНрд╡рд░ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд╕рд╛рде рд╢рд╛рдорд┐рд▓ рд╣реИред рдпрд╣ рдХреЗрд╡рд▓ рдХрд╛рдлреА рдЬрдЯрд┐рд▓ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реИ: рдХрдорд╛рдВрдб рдХреЗ рдЫреЛрдЯреЗ рд╕реЗрдЯ рдЗрдВрдЯрд░реИрдХреНрдЯрд┐рд╡ рддрд░реАрдХреЗ рд╕реЗ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реИред

рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ


рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдПрдХ рдЕрдЪреНрдЫреА рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рд╢реИрд▓реА рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ, рд╕рд╛рде рд╣реА рдЙрдЪрд┐рдд рдЗрдВрдбреЗрдВрдЯреЗрд╢рди рдФрд░ рд░рд┐рдХреНрдд рд╕реНрдерд╛рди:

#       тАФ     .

<# 

             . 
            .

#>

рдЪрд░ рдФрд░ рдЙрдирдХреЗ рдкреНрд░рдХрд╛рд░


PowerShell рдореЗрдВ рдЪрд░ рдХрд╛ рдирд╛рдо рдСрдмреНрдЬреЗрдХреНрдЯ рд╣реИрдВред рдЙрдирдХреЗ рдирд╛рдореЛрдВ рдореЗрдВ рдПрдХ рдЕрдВрдбрд░рд╕реНрдХреЛрд░, рд╕рд╛рде рд╣реА рдкрддреНрд░ рдФрд░ рд╕рдВрдЦреНрдпрд╛рдПрдВ рд╢рд╛рдорд┐рд▓ рд╣реЛ рд╕рдХрддреА рд╣реИрдВред $ рдкреНрд░рддреАрдХ рд╣рдореЗрд╢рд╛ рдирд╛рдо рд╕реЗ рдкрд╣рд▓реЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдПрдХ рдЪрд░ рдШреЛрд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдпрд╣ рджреБрднрд╛рд╖рд┐рдпрд╛ рдХреЛ рдПрдХ рд╡реИрдз рдирд╛рдо рдЗрдВрдЧрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИ:

рдЫрд╡рд┐

рдЪрд░ рдХреЛ рдЖрд░рдВрдн рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП (рдЗрд╕рдХреЗ рд▓рд┐рдП рдПрдХ рдореВрд▓реНрдп рдЕрд╕рд╛рдЗрди рдХрд░реЗрдВ), рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рдСрдкрд░реЗрдЯрд░ (рдкреНрд░рддреАрдХ =) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:

$test = 100

рдЖрдк рдирд╛рдо рдпрд╛ рдорд╛рди рд╕реЗ рдкрд╣рд▓реЗ рд╕реНрдХреНрд╡рд╛рдпрд░ рдмреНрд░реИрдХреЗрдЯ (рдкреНрд░рдХрд╛рд░ рд░реВрдкрд╛рдВрддрд░рдг рдСрдкрд░реЗрдЯрд░) рдореЗрдВ рдЗрд╕рдХреЗ рдкреНрд░рдХрд╛рд░ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рдХреЗ рдПрдХ рдЪрд░ рдШреЛрд╖рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

[int]$test = 100

$test = [int]100

рдпрд╣ рд╕рдордЭрдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдХрд┐ рдкрд╛рд╡рд░рд╢реЗрд▓ рдореЗрдВ рдЪрд░ рдЧреБрдгреЛрдВ рдФрд░ рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдкреВрд░реНрдг-рдСрдмреНрдЬреЗрдХреНрдЯ (рд╡рд░реНрдЧ) рд╣реИрдВ рдЬрд┐рдирдХреЗ рдкреНрд░рдХрд╛рд░ .NET рдХреЛрд░ рдореЗрдВ рдЙрдкрд▓рдмреНрдз рдЙрди рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИрдВред рд╣рдо рдореБрдЦреНрдп рд╕реВрдЪреА:
рдкреНрд░рдХрд╛рд░ (.NET рд╡рд░реНрдЧ)
рд╡рд┐рд╡рд░рдг
рдХреЛрдб рдЙрджрд╛рд╣рд░рдг
[string]
System.String
Unicode 
$test = ┬л┬╗
$test = ''
[char]
System.Char
Unicode (16 )
[char]$test = 'c'
[bool]
System.Boolean
( True False)
[bool]$test = $true
[int]
System.Int32
(32 )
[int]$test = 123456789
[long]
System.Int64
(64 )
[long]$test = 12345678910
[single]
System.Single
32
[single]$test = 12345.6789
[double]
System.Double
64 (8 )
[double]$test = 123456789.101112
[decimal]
System.Decimal
128-рдмрд┐рдЯ рдлреНрд▓реЛрдЯрд┐рдВрдЧ-рдкреЙрдЗрдВрдЯ рдирдВрдмрд░ (рдЕрдВрдд рдореЗрдВ d рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рдирд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ)
[рджрд╢рдорд▓рд╡] $ рдкрд░реАрдХреНрд╖рдг = 12345.6789d
[рдбреЗрдЯрдЯрд╛рдЗрдо]
System.DateTime
рджрд┐рдирд╛рдВрдХ рдФрд░ рд╕рдордп 
$ рдкрд░реАрдХреНрд╖рдг = рдЧреЗрдЯ-рдбреЗрдЯ
[array]
System.Object []
рдПрдХ рд╕рд░рдгреА рдЬрд┐рд╕рдХрд╛ рддрддреНрд╡ рд╕реВрдЪрдХрд╛рдВрдХ 0 рд╕реЗ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ
$ test_array = 1, 2, "test", 3, 4
[рд╣реИрд╢рдЯреЗрдмрд▓]
System.Collections.Hashtable
рд╣реИрд╢ рдЯреЗрдмрд▓ - рдирд╛рдорд┐рдд рдХреБрдВрдЬреА рдХреЗ рд╕рд╛рде рд╕рд╛рд╣рдЪрд░реНрдп рд╕рд░рдгрд┐рдпрд╛рдБ, рд╕рд┐рджреНрдзрд╛рдВрдд рдкрд░ рдирд┐рд░реНрдорд┐рдд: @ {рдХреБрдВрдЬреА = "рдорд╛рди"}
$ test_hashtable = @ {рдПрдХ = "рдПрдХ"; рджреЛ = "рджреЛ"; рддреАрди = "рддреАрди"}

PowerShell рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдкреНрд░рдХрд╛рд░ рд░реВрдкрд╛рдВрддрд░рдг рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЪрд░ рдХрд╛ рдкреНрд░рдХрд╛рд░ рдордХреНрдЦреА рдкрд░ рдмрджрд▓ рд╕рдХрддрд╛ рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рдСрдкрд░реЗрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ) рдпрджрд┐ рдЗрд╕реЗ рдЬрдмрд░рди рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ - рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рджреБрднрд╛рд╖рд┐рдпрд╛ рдПрдХ рддреНрд░реБрдЯрд┐ рдлреЗрдВрдХ рджреЗрдЧрд╛ред рдЖрдк GetType () рд╡рд┐рдзрд┐ рдХреЛ рдХреЙрд▓ рдХрд░рдХреЗ рдкрд┐рдЫрд▓реЗ рдЙрджрд╛рд╣рд░рдг рд╕реЗ рдПрдХ рдЪрд░ рдХрд╛ рдкреНрд░рдХрд╛рд░ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

$test.GetType().FullName

рдЫрд╡рд┐

рд╡реИрд░рд┐рдПрдмрд▓ рдХреЗ рдкреНрд░рдмрдВрдзрди рдХреЗ рд▓рд┐рдП рдХрдИ cmdlets рд╣реИрдВред рдПрдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд░реВрдк рдореЗрдВ рдЙрдирдХреА рд╕реВрдЪреА рдХреЛ рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:

Get-Command -Noun Variable | ft -Property Name, Definition -AutoSize -Wrap

рдЫрд╡рд┐

рдШреЛрд╖рд┐рдд рдЪрд░ рдФрд░ рдЙрдирдХреЗ рдореВрд▓реНрдпреЛрдВ рдХреЛ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк рд╡рд┐рд╢реЗрд╖ cmdlet рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

Get-Variable | more

рдпрд╣ рд╡рд┐рдзрд┐ рдЕрддреНрдпрдзрд┐рдХ рдмреЛрдЭрд┐рд▓ рд▓рдЧрддреА рд╣реИ, рдпрд╣ рдСрдкрд░реЗрдЯрд░реЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЪрд░ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╛ рд╕реАрдзреЗ рдЙрдирдХреЗ рдЧреБрдгреЛрдВ рдФрд░ рд╡рд┐рдзрд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐, cmdlets рдХрд╛ рдЕрдзрд┐рдХрд╛рд░ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдЖрдкрдХреЛ рдХреБрдЫ рдЕрддрд┐рд░рд┐рдХреНрдд рдкреИрд░рд╛рдореАрдЯрд░ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реИрдВред рдпрд╣ рд╕рдордЭрдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдХрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЪрд░ рдХреЗрд╡рд▓ рд╡рд░реНрддрдорд╛рди рд╕рддреНрд░ рдХреЗ рднреАрддрд░ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдП рдЧрдП рд╣реИрдВред рдХрдВрд╕реЛрд▓ рдХреЛ рдмрдВрдж рдХрд░рдиреЗ рдпрд╛ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдЙрдиреНрд╣реЗрдВ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рд╕рд┐рд╕реНрдЯрдо рдЪрд░


рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рджреНрд╡рд╛рд░рд╛ рдШреЛрд╖рд┐рдд рдХрд┐рдП рдЧрдП рд▓реЛрдЧреЛрдВ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд (рд╕рд┐рд╕реНрдЯрдо) рдЪрд░ рд╣реИрдВ рдЬреЛ рд╡рд░реНрддрдорд╛рди рд╕рддреНрд░ рдХреЗ рдЕрдВрдд рдХреЗ рдмрд╛рдж рд╣рдЯрд╛рдП рдирд╣реАрдВ рдЬрд╛рддреЗ рд╣реИрдВред рдЙрдиреНрд╣реЗрдВ рджреЛ рдкреНрд░рдХрд╛рд░реЛрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрдмрдХрд┐ рдкрд╛рд╡рд░рд╢реЗрд▓ рд╕реНрдЯреЗрдЯрд╕ рдбреЗрдЯрд╛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдЪрд░ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕реЗ рдЕрдкрдиреЗ рдЖрдк рд╣реА рдордирдорд╛рдиреЗ рдореВрд▓реНрдпреЛрдВ рдХреЛ рдирд╣реАрдВ рд╕реМрдВрдкрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЗрдирдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, $ PWD:

$PWD.Path

рдЫрд╡рд┐

рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рд╡рд░реАрдпрддрд╛ рдЪрд░реЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдЬрд┐рдирдХреЗ рдорд╛рди рдмрджрд▓реЗ рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, $ ErrorActionPreference рдХреА рд╕рд╣рд╛рдпрддрд╛ рд╕реЗ, рдЧреИрд░-рдорд╣рддреНрд╡рдкреВрд░реНрдг рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдХреЗ рд▓рд┐рдП рдХрдорд╛рдВрдб рджреБрднрд╛рд╖рд┐рдпрд╛ рдХреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХреА рдЬрд╛рддреА рд╣реИред

рдСрдкрд░реЗрдЯрд░реЛрдВ рдФрд░ cmdlets рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЪрд░: рдЫрджреНрдо рд╕рдВрдЪрд╛рдпрдХ рдШреЛрд╖рд┐рдд рдЪрд░ рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдореМрдЬреВрдж рд╣реИред рдЖрдк рдЕрдиреНрдп рдбреНрд░рд╛рдЗрд╡ рдХреЗ рд╕рд╛рде рд╕рд╛рджреГрд╢реНрдп рджреНрд╡рд╛рд░рд╛ рдЗрд╕рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдЪрд░ рдлрд╝рд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдХреЗ рд╕рдорд╛рди рд╣реИрдВ:

Get-ChildItem Variable: | more

рдпрд╛

ls Variable: | more

рдЫрд╡рд┐

рдХрд╛рд░реНрдпрдХреНрд╖реЗрддреНрд░


PowerShell рдореЗрдВ рдЪрд░ рдХреЗ рд▓рд┐рдП, рд╕реНрдХреЛрдк рдХреА рдзрд╛рд░рдгрд╛ рд╣реИред рд╡реИрд╢реНрд╡рд┐рдХ рдХреНрд╖реЗрддреНрд░ (рдЧреНрд▓реЛрдмрд▓) рдХреА рдХрд╛рд░реНрд░рд╡рд╛рдИ рдкреВрд░реЗ рд╡рд░реНрддрдорд╛рди рд╕рддреНрд░ рддрдХ рдлреИрд▓реА рд╣реБрдИ рд╣реИ - рдЗрд╕рдореЗрдВ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╕рд┐рд╕реНрдЯрдо рдЪрд░ рд╢рд╛рдорд┐рд▓ рд╣реИрдВред рд╕реНрдерд╛рдиреАрдп рдЪрд░ рдХреЗрд╡рд▓ рдЙрд╕ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдЙрдкрд▓рдмреНрдз рд╣реИрдВ рдЬрд╣рд╛рдВ рдЙрдиреНрд╣реЗрдВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛: рдорд╛рди рд▓реЗрдВ рдХрд┐ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдЕрдВрджрд░ рд╣реИред рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕реНрдХреЛрдк рдХреА рдЕрд╡рдзрд╛рд░рдгрд╛ рднреА рд╣реИ, рд▓реЗрдХрд┐рди рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрдорд╛рдВрдб рдХреЗ рд▓рд┐рдП, рдпрд╣ рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ рд╕реНрдерд╛рдиреАрдп рд╣реИред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, рдЪрд░ рдШреЛрд╖рд┐рдд рдХрд░рддреЗ рд╕рдордп, рдЙрдиреНрд╣реЗрдВ рдПрдХ рд╕реНрдерд╛рдиреАрдп рдЧреБрдВрдЬрд╛рдЗрд╢ рджреА рдЬрд╛рддреА рд╣реИ, рдФрд░ рдЗрд╕реЗ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рдлреЙрд░реНрдо рдХреЗ рдПрдХ рд╡рд┐рд╢реЗрд╖ рдирд┐рд░реНрдорд╛рдг рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ: $ Global: рдЪрд░ = рдорд╛рдиред

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЗрд╕ рддрд░рд╣:

$Global:test = 100

рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░


рдПрдХ рдФрд░ Env рдЫрджреНрдо рдбреНрд░рд╛рдЗрд╡ PowerShell рд╕реЗ рдЙрдкрд▓рдмреНрдз рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдХреЛ рдПрдХреНрд╕реЗрд╕ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЬрдм рд╢реЗрд▓ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдЙрдиреНрд╣реЗрдВ рдореВрд▓ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╕реЗ рдХреЙрдкреА рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рдпрд╛рдиреА, рдЙрд╕ рдкреНрд░реЛрдЧреНрд░рд╛рдо рд╕реЗ рдЬрд┐рд╕рдиреЗ рд╡рд░реНрддрдорд╛рди рд╕рддреНрд░ рд╢реБрд░реВ рдХрд┐рдпрд╛ рдерд╛) рдФрд░ рдЖрдорддреМрд░ рдкрд░ рдЙрдирдХреЗ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдореВрд▓реНрдп рдирд┐рдпрдВрддреНрд░рдг рдХрдХреНрд╖ рдореЗрдВ рдореВрд▓реНрдпреЛрдВ рдХреЗ рд╕рд╛рде рдореЗрд▓ рдЦрд╛рддреЗ рд╣реИрдВред рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░реЛрдВ рдХреЛ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП, рдЧреЗрдЯ-рдЪрд╛рдЗрд▓реНрдбрдЗрдо cmdlet рдпрд╛ рдЗрд╕рдХреЗ рдЙрдкрдирд╛рдо (рд▓рд┐рдпрд╕) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ: ls рдФрд░ dirред

dir Env:

рдЫрд╡рд┐

рдпреЗ рдЪрд░ рдмрд╛рдЗрдЯреНрд╕ (рдпрд╛ рд╡рд░реНрдг, рдпрджрд┐ рдЖрдкрдХреЛ рдкрд╕рдВрдж рд╣реИрдВ) рдХреЗ рдЕрдиреБрдХреНрд░рдо рд╣реИрдВ, рдЬрд┐рдирдореЗрдВ рд╕реЗ рд╡реНрдпрд╛рдЦреНрдпрд╛ рдХреЗрд╡рд▓ рдЙрд╕ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддреА рд╣реИ рдЬреЛ рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред * -Variable cmdlets рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддреА рд╣реИред рдЙрдиреНрд╣реЗрдВ рдПрдХреНрд╕реЗрд╕ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдбрд┐рд╕реНрдХ рдЙрдкрд╕рд░реНрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реЛрдЧрд╛:

$env:TEST = "Hello, World!"

рдЫрд╡рд┐

рдЕрдВрдХрдЧрдгрд┐рдд рдФрд░ рддреБрд▓рдирд╛ рдСрдкрд░реЗрдЯрд░


PowerShell рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЕрдВрдХрдЧрдгрд┐рддреАрдп рдСрдкрд░реЗрдЯрд░ рд╣реИрдВ: + (рдЬреЛрдбрд╝), - (рдШрдЯрд╛рд╡), * (рдЧреБрдгрд╛), / (рд╡рд┐рднрд╛рдЬрди) рдФрд░% (рдореЙрдбреНрдпреВрд▓ рдпрд╛ рд╢реЗрд╖ рднрд╛рдЧ)ред рдЕрдВрдХрдЧрдгрд┐рддреАрдп рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреЗ рдкрд░рд┐рдгрд╛рдо рдХреЛ рдСрдкрд░реЗрд╢рди рдХреЗ рдЖрдо рддреМрд░ рдкрд░ рд╕реНрд╡реАрдХреГрдд рдЖрджреЗрд╢ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдмрд╛рдПрдВ рд╕реЗ рджрд╛рдПрдВ рдХреА рдЧрдгрдирд╛ рдХреА рдЬрд╛рддреА рд╣реИ, рдФрд░ рдХреЛрд╖реНрдардХ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреЗ рд╕рдореВрд╣ рднрд╛рдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдСрдкрд░реЗрдЯрд░реЛрдВ рдХреЗ рдмреАрдЪ рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рдХреЛ рдирдЬрд░рдЕрдВрджрд╛рдЬ рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ рдХреЗрд╡рд▓ рдзрд╛рд░рдгрд╛ рдХреЛ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред + рдСрдкрд░реЗрдЯрд░ рднреА рдХрд╛рд░реНрдп рдХрд░рддрд╛ рд╣реИ, рдФрд░ * рдСрдкрд░реЗрдЯрд░ рд▓рд╛рдЗрдиреЛрдВ рдХреЛ рджреЛрд╣рд░рд╛рддрд╛ рд╣реИред рдпрджрд┐ рдЖрдк рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдореЗрдВ рдПрдХ рд╕рдВрдЦреНрдпрд╛ рдЬреЛрдбрд╝рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЗрд╕реЗ рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдореЗрдВ рдмрджрд▓ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, PowerShell рдХреЗ рдкрд╛рд╕ рдХрдИ рддреБрд▓рдирд╛рддреНрдордХ рдСрдкрд░реЗрдЯрд░ рд╣реИрдВ рдЬреЛ рджреЛ рдореВрд▓реНрдпреЛрдВ рдФрд░ рд░рд┐рдЯрд░реНрди рдмреВрд▓рд┐рдпрди рдЯреНрд░реВ рдпрд╛ рдЧрд▓рдд рдХреЗ рдмреАрдЪ рдкрддреНрд░рд╛рдЪрд╛рд░ рдХреА рдЬрд╛рдВрдЪ рдХрд░рддреЗ рд╣реИрдВ:
рдСрдкрд░реЗрдЯрд░
рд╡рд┐рд╡рд░рдг
рдХреЛрдб рдЙрджрд╛рд╣рд░рдг
-eq
рдЕрдиреНрдп рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рд╕рдорд╛рди (рдПрдирд╛рд▓реЙрдЧ = рдпрд╛ ==)
$ рдкрд░реАрдХреНрд╖рдг = 100
$ рдкрд░реАрдХреНрд╖рдг -e 123 
-ne
рдирд╣реАрдВ рдХреЗ рдмрд░рд╛рдмрд░ (рдПрдирд╛рд▓реЙрдЧ <> рдпрд╛! =)
$ рдкрд░реАрдХреНрд╖рдг = резрежреж
$ рдкрд░реАрдХреНрд╖рдг -резреиреи   
-gt
рд╕реЗ рдЕрдзрд┐рдХ / рдЕрдзрд┐рдХ (рдПрдирд╛рд▓реЙрдЧ>)
$ рдкрд░реАрдХреНрд╖рдг = 100
$ рдкрд░реАрдХреНрд╖рдг -gt 123
-ge
рдЙрд╕рд╕реЗ рдЕрдзрд┐рдХ рдпрд╛ рдмрд░рд╛рдмрд░ / рдЙрд╕рд╕реЗ рдЕрдзрд┐рдХ рдпрд╛ рдЙрд╕рд╕реЗ рдЕрдзрд┐рдХ (рдПрдирд╛рд▓реЙрдЧ> =)
$ рдкрд░реАрдХреНрд╖рдг = резрежреж
$ рдкрд░реАрдХреНрд╖рдг -резреиреи
-lt
рд╕реЗ рдХрдо (рдПрдирд╛рд▓реЙрдЧ <)
$ рдкрд░реАрдХреНрд╖рдг = резрежреж
$ рдЯреЗрд╕реНрдЯ -резреиреж  
-рд▓реЗ
рдЗрд╕рд╕реЗ рдХрдо рдпрд╛ рдмрд░рд╛рдмрд░ / рдЗрд╕рд╕реЗ рдХрдо рдпрд╛ рдмрд░рд╛рдмрд░ (рдЕрдиреБрд░реВрдк <=)
$ рдкрд░реАрдХреНрд╖рдг = 100
$ рдкрд░реАрдХреНрд╖рдг -резреиреи

рдЕрдиреНрдп рд╕рдорд╛рди рдСрдкрд░реЗрдЯрд░ рд╣реИрдВ рдЬреЛ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╡рд╛рдЗрд▓реНрдбрдХрд╛рд░реНрдб рд╡рд░реНрдг рдХреЗ рд╕рд╛рде рддрд╛рд░ рдХреА рддреБрд▓рдирд╛ рдХрд░рддреЗ рд╣реИрдВ рдпрд╛ рдкреИрдЯрд░реНрди рд╕реЗ рдорд┐рд▓рд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рдпрдорд┐рдд рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рд╣рдо рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд▓реЗрдЦреЛрдВ рдореЗрдВ рдЙрди рдкрд░ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВрдЧреЗред рдкреНрд░рддреАрдХреЛрдВ <,> рдФрд░ = рдХрд╛ рдЙрдкрдпреЛрдЧ рддреБрд▓рдирд╛ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ рдЕрдиреНрдп рдЙрджреНрджреЗрд╢реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рдСрдкрд░реЗрдЯрд░реНрд╕


рд╕рдмрд╕реЗ рдЖрдо рдСрдкрд░реЗрдЯрд░ = рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЕрдиреНрдп рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рдСрдкрд░реЗрдЯрд░ рд╣реИрдВ: + =, - =, * =, / = рдФрд░% =ред рд╡реЗ рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рд╕реЗ рдкрд╣рд▓реЗ рдореВрд▓реНрдп рдмрджрд▓рддреЗ рд╣реИрдВред рдпреВрдирд┐рд░реА рдСрдкрд░реЗрдЯрд░реНрд╕ ++ рдФрд░ - рд╕рдорд╛рди рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░рддреЗ рд╣реИрдВ, рдЬреЛ рдХрд┐рд╕реА рд╡реИрд░рд┐рдПрдмрд▓ рдХреЗ рдореВрд▓реНрдп рдХреЛ рдмрдврд╝рд╛рддреЗ рдпрд╛ рдШрдЯрд╛рддреЗ рд╣реИрдВ - рд╡реЗ рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рдСрдкрд░реЗрдЯрд░реНрд╕ рд╕реЗ рднреА рд╕рдВрдмрдВрдзрд┐рдд рд╣реИрдВред

рд▓реЙрдЬрд┐рдХрд▓ рдСрдкрд░реЗрдЯрд░реНрд╕


рддреБрд▓рдирд╛ рдХрдард┐рди рдкрд░рд┐рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рдирд╣реАрдВ рд╣реИред рдЖрдк рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдСрдкрд░реЗрдЯрд░реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд┐рд╕реА рднреА рддрд╛рд░реНрдХрд┐рдХ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреЛ рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ: -рдФрд░, -or, -xor, -not рдФрд░! .. рд╡реЗ рдЕрдиреНрдп рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛рдУрдВ рдХреА рддрд░рд╣ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ, рдЬрдмрдХрд┐ рдЖрдк рдЧрдгрдирд╛ рдХреНрд░рдо рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрд╖реНрдардХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

("" -eq "") -and (100 -eq 100)

-not (123 -gt 321) 

!(123 -gt 321)

рд╕рд╢рд░реНрдд рдХреВрдж


рдкреЙрд╡рд░рд╢реЗрд▓ рдореЗрдВ рдмреНрд░рд╛рдВрдЪрд┐рдВрдЧ рдСрдкрд░реЗрдЯрд░ рдорд╛рдирдХ рд╣реИрдВ: IF (IF ... ELSE, IF ... ELSEIF ... ELSE) рдФрд░ SWITCHред рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рдЙрдирдХреЗ рдЙрдкрдпреЛрдЧ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ:

[int]$test = 100
if ($test -eq 100) {
      Write-Host "test = 100"
}



[int]$test = 50
if ($test -eq 100) {
       Write-Host "test = 100"
}
else {
      Write-Host "test <> 100"
}



[int]$test = 10
if ($test -eq 100) {
      Write-Host "test = 100"
}
elseif ($test -gt 100) {
      Write-Host "test > 100"
}
else {
       Write-Host "test < 100"
}



[int]$test = 5
switch ($test) {
     0 {Write-Host "test = 0"}
     1 {Write-Host "test = 1"}
     2 {Write-Host "test = 2"}
     3 {Write-Host "test = 3"}
     4 {Write-Host "test = 4"}
     5 {Write-Host "test = 5"}
     default {Write-Host "test > 5    "}
}

рд╕рд╛рдЗрдХрд┐рд▓


PowerShell рдореЗрдВ рдХрдИ рдкреНрд░рдХрд╛рд░ рдХреЗ рд▓реВрдк рд╣реИрдВ: WHILE, DO WHILE, DO UNTIL, FOR, рдФрд░ FOREACHред

рдкреВрд░реНрд╡рдЧрд╛рдореА рд▓реВрдк рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдЕрдЧрд░ / рдЬрдм рд╡рд╣ рдЪрд▓ рд░рд╣рд╛ рд╣реЛ:

[int]$test = 0
while ($test -lt 10) {
      Write-Host $test
      $test = $test + 1
}

рдкреЛрд╕реНрдЯрдХрдВрдбрд┐рд╢рди рд╡рд╛рд▓реЗ рд▓реВрдк рдХрдо рд╕реЗ рдХрдо рдПрдХ рдмрд╛рд░ рдХрд╛рдо рдХрд░реЗрдВрдЧреЗ, рдХреНрдпреЛрдВрдХрд┐ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рдХреЗ рдмрд╛рдж рд╕реНрдерд┐рддрд┐ рдХреА рдЬрд╛рдВрдЪ рдХреА рдЬрд╛рддреА рд╣реИред рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, DO WHILE рдХрд╛рд░реНрдп рдХрд░рддрд╛ рд╣реИ рдЬрдмрдХрд┐ рд╕реНрдерд┐рддрд┐ рд╕рддреНрдп рд╣реИ, рдФрд░ DO UNTIL - рдЬрдмрдХрд┐ рдпрд╣ рдЧрд▓рдд рд╣реИ:

[int]$test = 0
do {
      Write-Host $test
      $test = $test + 1 
}
while ($test -lt 10)



[int]$test = 0
do {
      Write-Host $test
      $test = $test + 1 
}
until ($test -gt 9)


рдлрд╝реЙрд░ рд▓реВрдк рдХреА рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐рдпреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдкрд╣рд▓реЗ рд╕реЗ рдЬреНрдЮрд╛рдд рд╣реИ:

for ([int]$test = 0; $test -lt 10; $test++) {
       Write-Host $test
}


рдПрдХ рдлреЙрд░реЗрд╕реНрдЯ рд▓реВрдк рдореЗрдВ рдПрдХ рд╕рд░рдгреА рдпрд╛ рд╕рдВрдЧреНрд░рд╣ (рд╣реИрд╢ рддрд╛рд▓рд┐рдХрд╛) рдХреЗ рддрддреНрд╡реЛрдВ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИ:

$test_collection = "item1", "item2", "item3"
foreach ($item in $test_collection)
{
        Write-Host $item
}

Arrays


PowerShell рдЪрд░ рди рдХреЗрд╡рд▓ рдПрдХрд▓ рдСрдмреНрдЬреЗрдХреНрдЯ (рд╕рдВрдЦреНрдпрд╛, рд╕реНрдЯреНрд░рд┐рдВрдЧ, рдЖрджрд┐) рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддреЗ рд╣реИрдВ, рдмрд▓реНрдХрд┐ рдмрд╣реБрд╡рдЪрди рднреА рд╣реЛрддреЗ рд╣реИрдВред рдРрд╕реЗ рд╡реЗрд░рд┐рдПрдмрд▓реНрд╕ рдХреА рд╕рдмрд╕реЗ рд╕рд░рд▓ рд╡рд┐рд╡рд┐рдзрддрд╛ рдПрд░реЗрдЬрд╝ рд╣реИред рдПрдХ рд╕рд░рдгреА рдореЗрдВ рдХрдИ рддрддреНрд╡ рд╢рд╛рдорд┐рд▓ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рдПрдХ рддрддреНрд╡ рдпрд╛ рдЦрд╛рд▓реА рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдЕрд░реНрдерд╛рддред рддрддреНрд╡ рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВред рдЗрд╕реЗ рдШреЛрд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, @ () рдСрдкрд░реЗрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ, рдЬрд┐рд╕рдХреА рд╣рдореЗрдВ рдЕрдЧрд▓реЗ рд▓реЗрдЦ рдореЗрдВ рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА - рд╕рд░рдгреА рдХреЗ рд▓рд┐рдП рдЕрдиреНрдп рд╕рд░рдгрд┐рдпреЛрдВ рдХреЛ рдЬреЛрдбрд╝рдирд╛ (рдмрд╣реБрдЖрдпрд╛рдореА рд╕рд░рдгрд┐рдпреЛрдВ рдХреЛ рдмрдирд╛рдирд╛) рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ, рд╕рд░рдгрд┐рдпреЛрдВ рдХреЛ рддрд░реНрдХреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рд░реНрдп рдХрд░рдирд╛, рдФрд░ рдЗрд╕реА рддрд░рд╣ рдХреЗ рдХрд╛рд░реНрдп:

$test_array = @() #  

рдЬрдм рд╕рд░рдгреА рдХреЛ рдЖрд░рдВрднреАрдХреГрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЗрд╕рдХреЗ рдорд╛рди рдЕрд▓реНрдкрд╡рд┐рд░рд╛рдо (рд╡рд┐рд╢реЗрд╖ рдСрдкрд░реЗрдЯрд░) рдХреЗ рд╕рд╛рде рд╕реВрдЪреАрдмрджреНрдз рд╣реЛрддреЗ рд╣реИрдВ:

$test_array = @(1, 2, 3, 4) #      

рдЬреНрдпрд╛рджрд╛рддрд░ рдорд╛рдорд▓реЛрдВ рдореЗрдВ, @ () рдСрдкрд░реЗрдЯрд░ рдЫреЛрдбрд╝рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:

$test_array = 1, 2, 3, 4

рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдПрдХ рддрддреНрд╡ рдХреА рдПрдХ рд╕рд╛рд░рдгреА рдХреЛ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рдЖрд░рдВрднреАрдХреГрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ

$test_array = , 1

рд╕рд░рдгреА рддрддреНрд╡реЛрдВ рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП, рд╢реВрдиреНрдп рд╕реЗ рд╢реБрд░реВ рд╣реЛрдиреЗ рд╡рд╛рд▓реЗ рдкреВрд░реНрдгрд╛рдВрдХ рд╕реВрдЪрдХрд╛рдВрдХ рдФрд░ рдПрдХ рд╕реВрдЪрдХрд╛рдВрдХ рдСрдкрд░реЗрдЯрд░ (рд╡рд░реНрдЧ рдХреЛрд╖реНрдардХ) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:

$test_array[0] = 1

рдЖрдк рдХрдИ рд╕реВрдЪрдХрд╛рдВрдХреЛрдВ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЕрд▓реНрдкрд╡рд┐рд░рд╛рдо рджреНрд╡рд╛рд░рд╛ рдЕрд▓рдЧ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ рдирдХрд▓:

$test_array = "", "", "", ""
$test_array[0,1,2,3]
$test_array[1,1,3,3,0]

рдЫрд╡рд┐

рдСрдкрд░реЗрдЯрд░ ..(рджреЛ рдмрд┐рдВрджреБ - рд░реЗрдВрдЬ рдСрдкрд░реЗрдЯрд░) рдКрдкрд░реА рдФрд░ рдирд┐рдЪрд▓реЗ рд╕реАрдорд╛ рджреНрд╡рд╛рд░рд╛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдЦрдВрдб рдкрд░ рдкреВрд░реНрдгрд╛рдВрдХреЛрдВ рдХреА рдПрдХ рд╕рд░рдгреА рджреЗрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ 1..4 рдЪрд╛рд░ рддрддреНрд╡реЛрдВ @ (1, 2, 3, 4) рдХреА рдПрдХ рд╕рд░рдгреА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ 8..5 рдПрдХ рд╕рд░рдгреА @ (8, 7, 6, 5) рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИред

рдЫрд╡рд┐

рд░реЗрдВрдЬ рдСрдкрд░реЗрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдЖрдк рдПрдХ рд╕рд░рдгреА ($ test_array = 1..4) рдХреЛ рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдпрд╛ рдПрдХ рд╕реНрд▓рд╛рдЗрд╕ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЕрд░реНрдерд╛рддред рдПрдХ рд╕рд░рдгреА рдореЗрдВ рддрддреНрд╡реЛрдВ рдХрд╛ рдХреНрд░рдо рджреВрд╕рд░реЗ рд╕реЗ рд╕реВрдЪрдХрд╛рдВрдХреЛрдВ рдХреЗ рд╕рд╛рдеред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдПрдХ рдЛрдгрд╛рддреНрдордХ рд╕рдВрдЦреНрдпрд╛ -1, рд╕рд░рдгреА рдХреЗ рдЕрдВрддрд┐рдо рддрддреНрд╡ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ, -2 - рдкреНрд░рд╛рдпрджреНрд╡реАрдк, рдЖрджрд┐ред

$test_array = "", "", "", ""
$test_array[0..2]
$test_array[2..0]
$test_array[-1..0]
$test_array[-2..1]

рдХреГрдкрдпрд╛ рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдкреВрд░реНрдгрд╛рдВрдХ рд╕рд░рдгреА рдХрд╛ рдорд╛рди рдбреЗрдЯрд╛ рд╕рд░рдгреА рдХреЗ рд╕реВрдЪрдХрд╛рдВрдХ рдХреЗ рдЕрдзрд┐рдХрддрдо рдореВрд▓реНрдп рд╕реЗ рдЕрдзрд┐рдХ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рд╕рднреА рдорд╛рди рдЕрдВрддрд┐рдо рджрд┐рдП рдЧрдП рд╣реИрдВ:

$test_array[0..100]

рдпрджрд┐ рдЖрдк рдХрд┐рд╕реА рднреА рдЕрдЪреВрдХ рд╕рд░рдгреА рддрддреНрд╡ рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ $ null рд╡рд╛рдкрд╕ рдЖ рдЬрд╛рддрд╛ рд╣реИред

рдЫрд╡рд┐

PowerShell рдореЗрдВ, рд╕рд░рдгрд┐рдпреЛрдВ рдореЗрдВ рд╡рд┐рднрд┐рдиреНрди рдкреНрд░рдХрд╛рд░ рдХреЗ рддрддреНрд╡ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ рдпрд╛ рджреГрдврд╝рддрд╛ рд╕реЗ рдЯрд╛рдЗрдк рдХрд┐рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ:

$test_array = 1, 2, "", 3, 4
for ([int]$i = 0; $i -lt $test_array.count; $i++)
{
          Write-Host $test_array[$i]
}

рдЬрд╣рд╛рдБ рд╕рдВрдкрддреНрддрд┐ $ test_array.count рд╕рд░рдгреА рдореЗрдВ рддрддреНрд╡реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рд╣реИред

рдПрдХ рджреГрдврд╝рддрд╛ рд╕реЗ рдЯрд╛рдЗрдк рдХреА рдЧрдИ рд╕рд░рдгреА рдмрдирд╛рдиреЗ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг:

[int[]]$test_array = 0, 1, 2, 3, 4, 5, 6, 7, 8, 9

рд╣реИрд╢ рдЯреЗрдмрд▓


PowerShell рдореЗрдВ рдПрдХ рдФрд░ рдореВрд▓ рдкреНрд░рдХрд╛рд░ рдХрд╛ рдЪрд░ рд╣реИрд╢ рдЯреЗрдмрд▓ рд╣реИ, рдЬрд┐рд╕реЗ рд╕рд╛рд╣рдЪрд░реНрдп рд╕рд░рдгрд┐рдпрд╛рдВ рднреА рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред рд╣реИрд╢рдЯреЗрдмрд▓ JSON рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рд╕рдорд╛рди рд╣реИрдВ рдФрд░ рдПрдХ рдХреБрдВрдЬреА-рдореВрд▓реНрдп рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдмрдирд╛рдП рдЧрдП рд╣реИрдВред рд╕рд╛рдзрд╛рд░рдг рд╕рд░рдгрд┐рдпреЛрдВ рдХреЗ рд╡рд┐рдкрд░реАрдд, рдЙрдирдХреЗ рддрддреНрд╡реЛрдВ рддрдХ рдкрд╣реБрдВрдЪ рдирд╛рдорд┐рдд рдХреБрдВрдЬреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХреА рдЬрд╛рддреА рд╣реИ, рдЬреЛ рдСрдмреНрдЬреЗрдХреНрдЯ рдЧреБрдг рд╣реИрдВ (рдЖрдк рдЗрдВрдбреЗрдХреНрд╕ рдСрдкрд░реЗрдЯрд░ - рд╕реНрдХреНрд╡рд╛рдпрд░ рдмреНрд░реИрдХреЗрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рднреА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ)ред

рд╕реЗрд╡рд╛ рдЪрд┐рд╣реНрди @ рдФрд░ рдСрдкрд░реЗрдЯрд░ рдХреЛрд╖реНрдардХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рдЦрд╛рд▓реА рд╣реИрд╢ рддрд╛рд▓рд┐рдХрд╛ рдШреЛрд╖рд┐рдд рдХреА рдЬрд╛рддреА рд╣реИ:

$test_hashtable = @{}

рдШреЛрд╖рдгрд╛ рдХрд░рддреЗ рд╕рдордп, рдЖрдк рддреБрд░рдВрдд рдЪрд╛рдмрд┐рдпрд╛рдБ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдорд╛рди рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

$test_hashtable = @{one=""; two=""; three=""; "some key"="some value"}

рдХрд┐рд╕реА рдЖрдЗрдЯрдо рдХреЛ рд╣реИрд╢ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдЙрд╕реЗ рдПрдХ рдХреБрдВрдЬреА рдкреНрд░рджрд╛рди рдХрд░рдиреА рд╣реЛрдЧреА рдЬреЛ рдЕрднреА рддрдХ рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реИ рдпрд╛ рдРрдб () рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддреА рд╣реИред рдпрджрд┐ рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рдореМрдЬреВрджрд╛ рдХреБрдВрдЬреА рдХреЗ рд╕рд╛рде рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЗрд╕рдХрд╛ рдорд╛рди рдмрджрд▓ рдЬрд╛рдПрдЧрд╛ред рдХрд┐рд╕реА рдЖрдЗрдЯрдо рдХреЛ рд╣реИрд╢ рддрд╛рд▓рд┐рдХрд╛ рд╕реЗ рдирд┐рдХрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП, рдирд┐рдХрд╛рд▓реЗрдВ () рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред

$test_hashtable."some key"
$test_hashtable["some key"]
$test_hashtable.Add("four", "")
$test_hashtable.five = ""
$test_hashtable['five'] = " "
$test_hashtable.Remove("one")

рдЫрд╡рд┐

рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдХреЗ рдЪрд░ рдХреЛ рдХрд╛рд░реНрдпреЛрдВ рдФрд░ cmdlets рдХреЗ рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ - рдЕрдЧрд▓реЗ рд▓реЗрдЦ рдореЗрдВ рд╣рдо рд╕реАрдЦреЗрдВрдЧреЗ рдХрд┐ рдпрд╣ рдХреИрд╕реЗ рдХрд░рдирд╛ рд╣реИ, рдФрд░ рдПрдХ рдЕрдиреНрдп рд╕рдорд╛рди рдкреНрд░рдХрд╛рд░ рдкрд░ рднреА рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ - PSCustomObjectред

рдХрд╛рд░реНрдп


PowerShell рдореЗрдВ рдкреНрд░рдХреНрд░рд┐рдпрд╛рддреНрдордХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рд╕рднреА рдЖрд╡рд╢реНрдпрдХ рддрддреНрд╡ рд╣реИрдВ, рдЬрд┐рд╕рдореЗрдВ рдлрд╝рдВрдХреНрд╢рди рд╢рд╛рдорд┐рд▓ рд╣реИрдВред рдлрд╝рдВрдХреНрд╢рди рд╢рдмреНрдж рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдЙрдиреНрд╣реЗрдВ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕рдХреЗ рдмрд╛рдж рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдирд╛рдо рдФрд░ рдСрдкрд░реЗрдЯрд░ рдХреЛрд╖реНрдардХ рдореЗрдВ рд╕рдВрд▓рдЧреНрди рдирд┐рдХрд╛рдп рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ, рддреЛ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд▓рд┐рдП рддрд░реНрдХ рдкрд╛рд╕ рдХрд░реЗрдВ, рдЖрдк рдЙрдиреНрд╣реЗрдВ рдХреЛрд╖реНрдардХ рдореЗрдВ рдирд╛рдо рдХреЗ рддреБрд░рдВрдд рдмрд╛рдж рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

function - (1, ..., N) 
{ 
        - 
} 

рдПрдХ рдлрд╝рдВрдХреНрд╢рди рд╣рдореЗрд╢рд╛ рдПрдХ рдкрд░рд┐рдгрд╛рдо рджреЗрддрд╛ рд╣реИ - рдпрд╣ рдЙрд╕рдХреЗ рд╕рднреА рдмрдпрд╛рдиреЛрдВ рдХреЗ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреА рдПрдХ рд╕рд░рдгреА рд╣реИ, рдЕрдЧрд░ рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рд╣реИрдВред рдпрджрд┐ рдПрдХ рдХрдерди рд╣реИ, рддреЛ рд╕рдВрдмрдВрдзрд┐рдд рдкреНрд░рдХрд╛рд░ рдХрд╛ рдПрдХ рдПрдХрд▓ рдорд╛рди рд▓реМрдЯрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╡рд╛рдкрд╕реА $ рдореВрд▓реНрдп рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдкрд░рд┐рдгрд╛рдо рд╕рд░рдгреА рдореЗрдВ рдореВрд▓реНрдп $ рдореВрд▓реНрдп рдХреЗ рд╕рд╛рде рдПрдХ рддрддреНрд╡ рдЬреЛрдбрд╝рддрд╛ рд╣реИ рдФрд░ рдмрдпрд╛рди рд╕реВрдЪреА рдХреЛ рдирд┐рд░рд╕реНрдд рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдПрдХ рдЦрд╛рд▓реА рдлрд╝рдВрдХреНрд╢рди $ null рджреЗрддрд╛ рд╣реИред

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рд╕рдВрдЦреНрдпрд╛ рдЪреБрдХрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдлрд╝рдВрдХреНрд╢рди рдмрдирд╛рдПрдВ:

function sqr ($number)
{
      return $number * $number
}

рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдлрд╝рдВрдХреНрд╢рди рдмреЙрдбреА рдореЗрдВ рдЖрдк рдЗрд╕рдХреЗ рдХреЙрд▓ рд╕реЗ рдкрд╣рд▓реЗ рдШреЛрд╖рд┐рдд рдХрд┐рдП рдЧрдП рдХрд┐рд╕реА рднреА рдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ PowerShell рдореЗрдВ рдХреЙрд▓рд┐рдВрдЧ рдлрд╝рдВрдХреНрд╢рди рдЕрд╕рд╛рдорд╛рдиреНрдп рд▓рдЧ рд╕рдХрддреЗ рд╣реИрдВ: рддрд░реНрдХ (рдпрджрд┐ рдХреЛрдИ рд╣реЛ) рдХреЛрд╖реНрдардХ рдореЗрдВ рд╕рдВрд▓рдЧреНрди рдирд╣реАрдВ рд╣реИрдВ рдФрд░ рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рджреНрд╡рд╛рд░рд╛ рдЕрд▓рдЧ рдХрд┐рдП рдЧрдП рд╣реИрдВред

sqr 2

рдпрд╛ рдРрд╕рд╛:

sqr -number 2

рддрд░реНрдХ рдкрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдХреЗ рдХрд╛рд░рдг, рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХрднреА-рдХрднреА рдмреНрд░реИрдХреЗрдЯ рдореЗрдВ рд╕рдВрд▓рдЧреНрди рдХрд░рдирд╛ рдкрдбрд╝рддрд╛ рд╣реИ:

function test_func ($n) {}
test_func -eq $null     #   
(test_func) -eq $null   #   тАФ $true

рдЫрд╡рд┐

рдХрд┐рд╕реА рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддреЗ рд╕рдордп, рдЖрдк рддрд░реНрдХреЛрдВ рдХреЛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдорд╛рди рджреЗ рд╕рдХрддреЗ рд╣реИрдВ:

function func ($arg = value) {
         # 
}

рдлрд╝рдВрдХреНрд╢рди рддрд░реНрдХреЛрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдФрд░ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рд╣реИ, рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рдкрд╛рдЗрдкрд▓рд╛рдЗрди рд╕реЗ рдкрдврд╝рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ - рдпрд╣ рд╕рдм рдЕрдЧрд▓реЗ рд▓реЗрдЦ рдореЗрдВ рдХрд╛рдо рдЖрдПрдЧрд╛ рдЬрдм рд╣рдо рдирд┐рд░реНрдпрд╛рдд рдореЙрдбреНрдпреВрд▓ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ cmdlets рдмрдирд╛рддреЗ рд╣реИрдВред

рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рддреНрд░реБрдЯрд┐


PowerShell рдореЗрдВ рдПрдХ рдХреЛрд╢рд┐рд╢ рд╣реИ ... рдкрдХрдбрд╝реЛ ... рдЕрдВрдд рдореЗрдВ рдЕрдкрд╡рд╛рджреЛрдВ рдХреЛ рд╕рдВрднрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рддрдВрддреНрд░ред рдЯреНрд░рд╛рдИ рдмреНрд▓реЙрдХ рдореЗрдВ рдХреЛрдб рд╣реЛрддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рддреНрд░реБрдЯрд┐ рд╣реЛ рд╕рдХрддреА рд╣реИ, рдФрд░ рдХреИрдЪ рдмреНрд▓реЙрдХ рдореЗрдВ рдЙрд╕рдХрд╛ рд╣реИрдВрдбрд▓рд░ рд╣реЛрддрд╛ рд╣реИред рдпрджрд┐ рдХреЛрдИ рддреНрд░реБрдЯрд┐ рдирд╣реАрдВ рдереА, рддреЛ рдЗрд╕реЗ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЕрдВрдд рдореЗрдВ рдмреНрд▓реЙрдХ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рдмреНрд▓реЙрдХ рдХреЗ рдмрд╛рдж рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХреА рдЬрд╛рддреА рд╣реИ, рдПрдХ рддреНрд░реБрдЯрд┐ рдХреА рдШрдЯрдирд╛ рдХреА рдкрд░рд╡рд╛рд╣ рдХрд┐рдП рдмрд┐рдирд╛, рдФрд░ рд╡рд┐рднрд┐рдиреНрди рдкреНрд░рдХрд╛рд░ рдХреЗ рдЕрдкрд╡рд╛рджреЛрдВ рдХреЗ рд▓рд┐рдП рдХрдИ рдХреИрдЪ рдмреНрд▓реЙрдХ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред рдЕрдкрд╡рд╛рдж рдЦреБрдж рдХреЛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдЧреИрд░-рдШреЛрд╖рдгрд╛ рдЪрд░ ($ _) рдХреЗ рд▓рд┐рдП рд▓рд┐рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдЖрд╕рд╛рдиреА рд╕реЗ рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рдЙрджрд╛рд╣рд░рдг рдореЗрдВ, рд╣рдо рдПрдХ рдЧрд▓рдд рдорд╛рди рджрд░реНрдЬ рдХрд░рдиреЗ рдХреЗ рдЦрд┐рд▓рд╛рдл рд╕реБрд░рдХреНрд╖рд╛ рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╣реИрдВ:

try {

        [int]$test = Read-Host " "
        100 / $test

} catch {

         Write-Warning " "
         Write-Host $_

}

рдЫрд╡рд┐

рдкреЙрд╡рд░рд╢реЗрд▓ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХреА рдореВрд▓ рдмрд╛рддреЗрдВ рдЪрд┐рдВрддрд┐рдд рд╣реИрдВред рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд▓реЗрдЦреЛрдВ рдореЗрдВ рд╣рдо рд╡рд┐рднрд┐рдиреНрди рдкреНрд░рдХрд╛рд░реЛрдВ, рд╕рдВрдЧреНрд░рд╣, рдирд┐рдпрдорд┐рдд рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐, рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдирд┐рд░реНрдорд╛рдг, рдореЙрдбреНрдпреВрд▓ рдФрд░ рдХрд╕реНрдЯрдо cmdlets рдХреЗ рдЪрд░ рдХреЗ рд╕рд╛рде-рд╕рд╛рде рдСрдмреНрдЬреЗрдХреНрдЯ-рдУрд░рд┐рдПрдВрдЯреЗрдб рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХреЗ рд╕рд╛рде рдФрд░ рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рдЕрдзреНрдпрдпрди рдХрд░реЗрдВрдЧреЗред

рднрд╛рдЧ 1: рд╡рд┐рдВрдбреЛрдЬ рдкреЙрд╡рд░рд╢реЗрд▓ рдХреА рдореБрдЦреНрдп рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ
рднрд╛рдЧ 3: рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдФрд░ рдлрд╝рдВрдХреНрд╢рдВрд╕ рдХреЗ рд▓рд┐рдП рдкреИрд░рд╛рдореАрдЯрд░ рдкрд╛рд░рд┐рдд рдХрд░рдирд╛, cmdlets рдмрдирд╛рдирд╛
рднрд╛рдЧ 4: рд╡рд╕реНрддреБрдУрдВ, рдХрд╕реНрдЯрдо рдХрдХреНрд╖рд╛рдУрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛



All Articles