рдЬреЛ рд▓реЛрдЧ рдЯреИрдВрдХ рдореЗрдВ рд╣реИрдВ, рдЙрдирдХреЗ рд▓рд┐рдП рд╣рдо рдЖрдкрдХреЛ рд╕реВрдЪрд┐рдд рдХрд░рддреЗ рд╣реИрдВ: PowerShell 3 рдХреЛ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рддреМрд░ рдкрд░ рд╡рд┐рдВрдбреЛрдЬ 8 рдХреЗ рд╕рд╛рде рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред CTP рд╡рд┐рдВрдбреЛрдЬ 8 рдбреЗрд╡рд▓рдкрд░ рдкреНрд░реАрд╡реНрдпреВ (рдХреЙрдиреНрдлреНрд░реЗрдВрд╕ рдореЗрдВ / рдмрд┐рд▓реНрдб / рд╕рд┐рддрдВрдмрд░ 2011 рдореЗрдВ рдорд╛рдЗрдХреНрд░реЛрд╕реЙрдлреНрдЯ рд╕реЗ) рдХреЗ рд░рд┐рд▓реАрдЬ рдХреЗ рд╕рд╛рде рджрд┐рдЦрд╛рдИ рджрд┐рдпрд╛ред рджреВрд╕рд░реА CTP рд░рд┐рд▓реАрдЬрд╝ рдХреНрд░рд┐рд╕рдорд╕ рд╕реЗ рдареАрдХ рдкрд╣рд▓реЗ рджрд┐рдЦрд╛рдИ рджреАред
рдХрдИ рдорд╣реАрдиреЛрдВ рддрдХ рдореБрдЭреЗ PowerShell 3 рдХреЗ рд╕рд╛рде рдЦреЗрд▓рдиреЗ рдХрд╛ рдЕрд╡рд╕рд░ рдорд┐рд▓рд╛ рдФрд░ рдЕрдм рдореИрдВ рдЖрдкрдХреЛ рдЕрдкрдиреЗ рдЫрд╛рдкреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрддрд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред
рдкрд░рд┐рдЪрдп
рдЗрд╕ рд░рд┐рд▓реАрдЬрд╝ рдХреЗ рд╕рд╛рде рдмрд╣реБрдд рдХреБрдЫ рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореЗрд░реЗ рд▓рд┐рдП (
рдФрд░ рдореБрдЭреЗ - рд▓рдЧрднрдЧред рдЕрдиреБрд╡рд╛рджред ) рдореБрдЦреНрдп рдмрджрд▓рд╛рд╡ рдпрд╣ рд╣реИ рдХрд┐ рдЕрдм рдкрд╛рд╡рд░рд╢реЗрд▓ рдбрд╛рдпрдиреЗрдорд┐рдХ рднрд╛рд╖рд╛ рд░рдирдЯрд╛рдЗрдо рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИ, рдЕрд░реНрдерд╛рддреНред рдРрд╕реЗ рд╡рд╛рддрд╛рд╡рд░рдг рдкрд░, рдЬреЛ рдЖрдкрдХреЛ рд╕рд╛рдорд╛рдиреНрдп рднрд╛рд╖рд╛ рд░рдирдЯрд╛рдЗрдо (CLR) рдореЗрдВ рдбрд╛рдпрдиреЗрдорд┐рдХ рднрд╛рд╖рд╛ (
рдЙрджрд╛ред рдЖрдпрд░рдирд░реБрдмреА, рдЖрдпрд░рдирдкрд╛рдЗрдерди - рд▓рдЧрднрдЧ рдЕрдиреБрд╡рд╛рдж ) рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдЬреЛ рдмрджрд▓реЗ рдореЗрдВ .NET рдлреНрд░реЗрдорд╡рд░реНрдХ рдХрд╛ рдореВрд▓ рд╣реИред DLR .NET рдлреНрд░реЗрдорд╡рд░реНрдХ рдкрд░ рдЪрд▓рдиреЗ рд╡рд╛рд▓реА рдЧрддрд┐рд╢реАрд▓ рднрд╛рд╖рд╛рдУрдВ рдХреЛ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдирд╛ рдЖрд╕рд╛рди рдмрдирд╛рддрд╛ рд╣реИред рдмреЗрд╢рдХ, PowerShell рдореВрд▓ рд░реВрдк рд╕реЗ .NET рдлреНрд░реЗрдорд╡рд░реНрдХ рдореЗрдВ рдПрдХ рдЧрддрд┐рд╢реАрд▓ рднрд╛рд╖рд╛ рдереА, рд▓реЗрдХрд┐рди рдпрд╣ рдкрд╣рд▓реЗ рджрд┐рдЦрд╛рдИ рджрд┐рдпрд╛, рдЗрд╕рд▓рд┐рдП рдРрддрд┐рд╣рд╛рд╕рд┐рдХ рд░реВрдк рд╕реЗ рдпрд╣ DLR рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдирд╣реАрдВ рдерд╛ред рдФрд░ рдЕрдм, рдХреЗрд╡рд▓ рдЕрдм PowerShell рдХреЛ рдЕрдВрддрддрдГ DLR рдореЗрдВ рдкреЛрд░реНрдЯ рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рд╣рд╛рд▓рд╛рдБрдХрд┐ PowerShell 3 рдХреЛ DLR рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдЖрдпрд░рдирдкрд╛рдЗрдерди рдпрд╛ рдЖрдпрд░рдирд░реБрдмреА рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рд╣рд░ рджреГрд╖реНрдЯрд┐ рд╕реЗ рдПрдХ рдЧрддрд┐рд╢реАрд▓ рднрд╛рд╖рд╛ рдирд╣реАрдВ рд╣реИред рдореБрдЭреЗ DLR рдХреЗ рд▓рд┐рдП рдкреНрд░рд▓реЗрдЦрди рд╕реЗ рдХреБрдЫ рдЖрд░реЗрдЦ рджреЗрдВред
DLR рдЕрд╡рд▓реЛрдХрди
рдЖрд░реЗрдЦ рдкрд░ рдЖрдк рддреАрди рдореБрдЦреНрдп рдЦрдВрдб (рдХреЛрдбрдкреНрд▓реЗрдХреНрд╕ рдкрд░ рдбреАрдПрд▓рдЖрд░ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдореЗрдВ) рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ: рд╣реЛрд╕реНрдЯрд┐рдВрдЧ, рд░рдирдЯрд╛рдЗрдо рдФрд░ рднрд╛рд╖рд╛ред рд▓реЗрдХрд┐рди рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЬреИрд╕рд╛ рднреА рд╣реЛ, рдЙрди рд╕рднреА рдХреЛ .NET рдлреНрд░реЗрдорд╡рд░реНрдХ 4.0 CLR рдореЗрдВ рдкреЛрд░реНрдЯ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдкреЛрд░реНрдЯ рдХрд┐рдП рдЧрдП рдбреАрдПрд▓рдЖрд░
* рдЧреБрд▓рд╛рдмреА рд░рдВрдЧ рдореЗрдВ рд╣рд╛рдЗрд▓рд╛рдЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдЖрд░реЗрдЦ рд╣реИ рдЬреЛ CLR 4.0 рдореЗрдВ рд░рдЦрд╛ рдЧрдпрд╛ рд╣реИ - рд▓рдЧрднрдЧред рдЯреНрд░рд╛рдВрд╕редPowerShell 3 рд╕реАрдПрд▓рдЖрд░ рдореЗрдВ рдкреЛрд░реНрдЯ рдХрд┐рдП рдЧрдП рд╕рднреА (рдпрд╛ рд▓рдЧрднрдЧ рд╕рднреА) рдХрд╛ рд▓рд╛рдн рдЙрдард╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдирд┐рдЪреНрдЫрд╛ рдХреЗ рдХрд╛рд░рдг, рд╡рд┐рдХрд╛рд╕ рдЯреАрдо рдиреЗ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рдмрд╛рдХреА DLR рдХреЛ рдкреЛрд░реНрдЯ рдХрд░рдирд╛ рд╢реБрд░реВ рдирд╣реАрдВ рдХрд┐рдпрд╛ред рдЗрд╕ рдкреНрд░рдХрд╛рд░, PowerShell 3 рдореЗрдВ рд╕рд╛рдЭрд╛ рдПрдПрд╕рдЯреА рдФрд░ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдкреЗрдбрд╝реЛрдВ рдХреЗ рд╕рд╛рде-рд╕рд╛рде рдбрд╛рдпрдирд╛рдорд┐рдХрдСрдмреНрдЬреЗрдХреНрдЯ рдФрд░ рдХреЙрд▓ рд╕рд╛рдЗрдЯ рдХреИрд╢рд┐рдВрдЧ рд░рдирдЯрд╛рдЗрдо рдХреЗ рд╕рд╛рде DLR рднрд╛рд╖рд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╕рд╛рдорд╛рдиреНрдп рд╣реЛрд╕реНрдЯрд┐рдВрдЧ - ScriptRuntime, ScriptScope, ScriptSource рдпрд╛ CompiledCode рд╕реЗ рдХреБрдЫ рднреА рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред
рдЗрд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рдЖрдк PowerShell рдХреЗ рд▓рд┐рдП API рдХреА рдореЗрдЬрдмрд╛рдиреА рдХрд░рдиреЗ рд╡рд╛рд▓реЗ IronRuby рдФрд░ IronPython рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗред рд▓реЗрдХрд┐рди рдЖрдк рдЙрд╕реА API рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ PowerShell 2 рд╣реЛрд╕реНрдЯрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдХреЗрд╡рд▓ PSObject рдХреЗ рдмрдЬрд╛рдп C # рдореЗрдВ рдЖрдЙрдЯрдкреБрдЯ рдЖрдЙрдЯрдкреБрдЯ рдХрд░рддреЗ рд╕рдордп рдЖрдкрдХреЛ рдбрд╛рдпрдирд╛рдорд┐рдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред рдФрд░ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд╛рдд рд╣реИред
рдореИрдВ рдЙрди рд╕рднреА рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ рдЬреЛ рдЖрдк PowerShell 3 рдореЗрдВ рд╕рд╛рдордирд╛ рдХрд░реЗрдВрдЧреЗ рдФрд░ рдЬреЛ DLR рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдХрд╛ рдкреНрд░рддреНрдпрдХреНрд╖ рдкрд░рд┐рдгрд╛рдо рдереЗред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдХреБрдЫ рдЧрдВрднреАрд░ рдЪреАрдЬреЗрдВ рд╣реИрдВ рдЬрд┐рди рдкрд░ рдЖрдкрдХреЛ рдзреНрдпрд╛рди рджреЗрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдЖрдк рдкреНрд░рджрд░реНрд╢рди рдФрд░ рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рдЕрдВрддрд░ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдФрд░ рдмрд╛рдпрдиреЗрд░рд┐рдЬрд╝ рдХреЗ рд▓реЛрдб рд╕рдордп, рд╕рд╛рде рд╣реА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдФрд░ рдмрд╛рдпрдиреЗрд░рд┐рдЬрд╝ рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдЕрдиреБрдкрд╛рдд рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЖрдк рдЬреЛ рдЬрд╛рдирддреЗ рдереЗ, рд╡рд╣ PowerShell 3 рдХреА рд░рд┐рд▓реАрдЬрд╝ рд╕реЗ рдЧреБрдо рд╣реЛ рдЧрдпрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдФрд░ рдлрд╝рдВрдХреНрд╢рдВрд╕ рдХреА рд╡реНрдпрд╛рдЦреНрдпрд╛ рдЕрдм рдкреНрд░рддреНрдпреЗрдХ рдХреЙрд▓ рд╕реЗ рдкрд╣рд▓реЗ рдирд╣реАрдВ рдХреА рдЬрд╛рддреА рд╣реИ, рдмрд▓реНрдХрд┐ рд╕рдВрдХрд▓рд┐рдд, рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдФрд░ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдХреИрд╢ рдХреА рдЬрд╛рддреА рд╣реИ (рд╕рдордп-рд╕рдордп рдкрд░)ред рдирддреАрдЬрддрди, рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдкрд╣рд▓рд╛ рд▓реЙрдиреНрдЪ рдФрд░ рдкрд╣рд▓рд╛ рдЖрдпрд╛рдд рдХреБрдЫ рд╣рдж рддрдХ рдЙрдореНрдореАрдж рд╕реЗ рдЕрдзрд┐рдХ рд▓рдВрдмрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдФрд░ рдЙрдирдХреЗ рдмрд╛рдж рдХреЗ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдмрд╛рдж рдХреЗ рд╕рднреА рдХреЙрд▓ рддреЗрдЬреА рд╕реЗ рдкреНрд░рджрд░реНрд╢рди рдХрд┐рдП рдЧрдП рд╣реИрдВред рдФрд░ рдпрд╣ рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рдлрд╝рд╛рдЗрд▓реЛрдВ рдФрд░ рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд╛рд░реНрдпреЛрдВ рдореЗрдВ рд╕рднреА рд▓рд┐рдкрд┐рдпреЛрдВ рдкрд░ рд▓рд╛рдЧреВ рд╣реЛрддрд╛ рд╣реИред рдПрдХ рд╣реА рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЕрдиреБрдХреНрд░рдорд┐рдХ рд▓реЙрдиреНрдЪ рдХрдИ рдмрд╛рд░ рдХрдВрд╕реЛрд▓ рдореЗрдВ рдПрдХ рдФрд░ рдПрдХ рд╣реА рдХреЛрдб рдХреЛ рдХрдИ рдмрд╛рд░ рдЪрд┐рдкрдХрд╛рдиреЗ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдмрд╣реБрдд рддреЗрдЬрд╝ рд╣реЛрддрд╛ рд╣реИред
рдПрдХ рдФрд░ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдкрд░рд┐рд╡рд░реНрддрди PSObject рдХрд╛ рдкрд░рд┐рддреНрдпрд╛рдЧ рд╣реИред
PowerShell 3 рдореЗрдВ, PSObject рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рдЧрддрд┐рд╢реАрд▓ рд╡рд╕реНрддреБ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ C # рд╕реЗ рдмреБрд▓рд╛рдП рдЧрдП cmdlets рдФрд░ рд▓рд┐рдкрд┐рдпреЛрдВ рдХреЗ рдЖрдЙрдЯрдкреБрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдбрд╛рдпрдирд╛рдорд┐рдХ рдХреАрд╡рд░реНрдб рдХреЗ рд╕рд╛рде рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдмрдЬрд╛рдп рдХрд┐ PSObject рдХреЗ рд╕рд╛рде рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рдЫрджреНрдо-рдкрд░рд╛рд╡рд░реНрддрди рд╡рд┐рдзрд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдпред рд╡реИрд╕реЗ, рдпрд╣ рдХреЗрд╡рд▓ рд╣рд┐рдорд╢реИрд▓ рдХрд╛ рдЯрд┐рдк рд╣реИред
PowerShell 2 рдореЗрдВ, рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рдкреНрд░рдХрд╛рд░ рдкреНрд░рдгрд╛рд▓реА (ETS) рдореЗрдВ рд╕рдм рдХреБрдЫ PSObject рдкрд░ рдЖрдзрд╛рд░рд┐рдд рдерд╛ред рдирдП рд╕рджрд╕реНрдпреЛрдВ рдХреЛ рд╣рдореЗрд╢рд╛ PSObject рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рд╣реИ рдХрд┐ BaseObject рдЪрд╛рд░реЛрдВ рдУрд░ рд╕реЗ рд▓рдкреЗрдЯрддрд╛ рд╣реИ - рдЪрд╛рд╣реЗ рд╡рд╣ type.ps1xml рдлрд╝рд╛рдЗрд▓ рд╕реЗ рдЖрддрд╛ рд╣реЛ рдпрд╛ рдСрдмреНрдЬреЗрдХреНрдЯ рдкрд░ рдРрдб-рдореЗрдВрдмрд░ рдХреЙрд▓ рд╕реЗред рдпрджрд┐ Add-Member рд╡рд┐рдзрд┐ рдХреЛ PSObject рдореЗрдВ рд▓рд┐рдкрдЯреЗ рд╣реБрдП рдСрдмреНрдЬреЗрдХреНрдЯ рдкрд░ рдирд╣реАрдВ рдмреБрд▓рд╛рдпрд╛ рдЧрдпрд╛ рдерд╛, рддреЛ рдЖрдкрдХреЛ -Passthru рдкреИрд░рд╛рдореАрдЯрд░ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдФрд░ рдЖрдЙрдЯрдкреБрдЯ рдХреЛ PSObject рдореЗрдВ рд▓рдкреЗрдЯреЗ рдЬрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░реЛрд╕реЗрд╕ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдЬрд┐рд╕рдореЗрдВ рдПрдХ рдирдпрд╛ рд╕рджрд╕реНрдп рдЬреЛрдбрд╝рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрджрд┐ рдХрд┐рд╕реА рд╡рд╕реНрддреБ рдХреЛ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдкреНрд░рдХрд╛рд░ рдХреЗ рд▓рд┐рдП рдбрд╛рд▓рд╛ рдЧрдпрд╛ рдерд╛, рддреЛ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рдИрдЯреАрдПрд╕ рд╕рджрд╕реНрдп рдЕрдзрд┐рдХрд╛рдВрд╢ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдЦреЛ рдЧрдП рдереЗред рдиреАрдЪреЗ рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣реИ:
$psObject = Get-ChildItem $psObject.Count $Count1 = ($psObject | where { $_.PSIsContainer }).Count [IO.FileSystemInfo[]]$ioObject = Get-ChildItem $ioObject.Count $Count2 = ($ioObject | where { $_.PSIsContainer }).Count $Count3 = ($ioObject | where { $_ -is [IO.DirectoryInfo] }).Count
PowerShell 2 рдореЗрдВ, $ Count1 рдФрд░ $ Count3 рдореЗрдВ рд╡рд░реНрддрдорд╛рди рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдлрд╝реЛрд▓реНрдбрд░реНрд╕ рдХреА рд╕рдВрдЦреНрдпрд╛ рд╣реЛрдЧреА, рдФрд░ $ Count2 рд╣рдореЗрд╢рд╛ 0 рд╣реЛрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ PSIsContainer рдкреНрд░реЙрдкрд░реНрдЯреА рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ ETS рдкреНрд░реЙрдкрд░реНрдЯреА рд╣реИ рдЬреЛ FileSystemInfo рдХреЛ рдХрд╛рд╕реНрдЯрд┐рдВрдЧ рдХрд░рддреЗ рд╕рдордп рдЦреЛ рдЬрд╛рддреА рд╣реИ, рдпрд╣реА рд╡рдЬрд╣ рд╣реИ рдХрд┐ рдЗрд╕ рд╡реЗрд░рд┐рдПрдмрд▓ рдХрд╛ рд╣рдореЗрд╢рд╛ рд╢реВрдиреНрдп рдХреЗ рд░реВрдк рдореЗрдВ рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
PowerShell 3 рдореЗрдВ, рдкрд░рд┐рдгрд╛рдо рдЕрд▓рдЧ рд╣реЛрдЧрд╛ред PowerShell рдЕрдм рдЧрддрд┐рд╢реАрд▓ рд╡рд╕реНрддреБрдУрдВ рдХреЗ рд░реВрдк рдореЗрдВ рд╕рдм рдХреБрдЫ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдРрдб-рд╕рджрд╕реНрдп рдХреЛ рдЕрдм рдЗрди рдИрдЯреАрдПрд╕ рд╕рджрд╕реНрдпреЛрдВ рдХреЛ рдЯреНрд░реИрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП PSObject рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рддреЛ рдЕрдм рдКрдкрд░ рдкреНрд░рд╕реНрддреБрдд рд╕реНрдХреНрд░рд┐рдкреНрдЯ $ Count1, $ Count2 рдФрд░ $ Count3 рдХреЛ рд╕рдорд╛рди рд░реВрдк рд╕реЗ рд╡рд╛рдкрд╕ рдХрд░ рджреЗрдЧреА, рдЬреИрд╕рд╛ рдХрд┐ рдЕрдкреЗрдХреНрд╖рд┐рдд рдерд╛ред рдЬрд╛рд╣рд┐рд░ рд╣реИ, рдПрдб-рдореЗрдВрдмрд░ рдореЗрдВ "-рдкрд╢реНрдЪрд░реБ" рд╡рд┐рдХрд▓реНрдк рдХреЗрд╡рд▓ рдЯрдирд▓ рдЪреАрдЬреЛрдВ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реИ, рди рдХрд┐ рд╕рд╛рдзрд╛рд░рдг рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рдХреЗ рд▓рд┐рдПред рд▓реЗрдХрд┐рди рдЬреИрд╕рд╛ рдХрд┐ рдпрд╣ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдЕрднреА рднреА рдРрд╕реЗ рдорд╛рдорд▓реЗ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ рдЬрдм рдЗрдХрд╛рдЗрдпрд╛рдВ рдЕрднреА рднреА PSObject рдореЗрдВ рд▓рдкреЗрдЯрдиреЗ рд▓рд╛рдпрдХ рд╣реИрдВред
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рд╕рд╣рдордд рд╣реЛрдВрдЧреЗ рдХрд┐ PowerShell рдХреЛ DLR рдореЗрдВ рдкреЛрд░реНрдЯ рдХрд░рдирд╛ рдПрдХ рдмрдбрд╝рд╛ рдХрджрдо рд╣реИ! рд▓реЗрдХрд┐рди рдмрдбрд╝реЗ рдмрджрд▓рд╛рд╡реЛрдВ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд░рд╣реЗрдВ рдЬреЛ рдкрд╣рд▓реЗ рд╕реЗ рд▓рд╛рдЧреВ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЛ рддреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдКрдкрд░ рдХреА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рддреАрди рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ PowerShell 2 рдФрд░ PowerShell 3 CTP2 рдореЗрдВ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░реЗрдВ:
$Count1 -eq $Count2 $e = $ioObject[0] | Add-Member NoteProperty Note -Passthru $f = $ioObject[0] | Add-Member NoteProperty Note -Passthru
PowerShell 2 рдореЗрдВ, рдЖрдкрдХреЛ рдЧрд▓рдд рдорд┐рд▓реЗрдЧрд╛, рдФрд░ рдЕрдЧрд▓реА рджреЛ рдкрдВрдХреНрддрд┐рдпрд╛рдБ рдареАрдХ рдХрд╛рдо рдХрд░реЗрдВрдЧреАред PowerShell 3 рдореЗрдВ, рдкрд╣рд▓реА рдкрдВрдХреНрддрд┐ рдЯреНрд░реВ рд╡рд╛рдкрд╕ рдЖрдПрдЧреА, рдФрд░ Add-Member рдХреЗ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рд╡рдЬреВрдж рднреА PSObject рдореЗрдВ рд▓рд┐рдкрдЯреЗ рдирд╣реАрдВ, рддреАрд╕рд░реА рдкрдВрдХреНрддрд┐ "рдРрдб-рдореЗрдВрдмрд░: рддреНрд░реБрдЯрд┐ рдЙрддреНрдкрдиреНрди рдХрд░реЗрдЧреА" рдирд╛рдо рдХреЗ рд╕рд╛рде рдПрдХ рд╕рджрд╕реНрдп рдирд╣реАрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ "рдиреЛрдЯ" рдЙрд╕ рдирд╛рдо рдХреЗ рд╕рд╛рде рдПрдХ рд╕рджрд╕реНрдп рдХреНрдпреЛрдВрдХрд┐ рдкрд╣рд▓реЗ рд╕реЗ рдореМрдЬреВрдж рд╣реИред тАЭ
рдХрд┐рд╕реА рднреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдореБрдЭреЗ рдпрдХреАрди рд╣реИ рдХрд┐ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдореИрдВ DLR рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рдФрд░ рд▓рд┐рдЦреВрдВрдЧрд╛ рдФрд░ рдЗрд╕рдХреЗ рд╕рдВрдХреНрд░рдордг рдХреЗ рд╕рд╛рде PowerShell рдореЗрдВ рдХреНрдпрд╛ рдкрд░рд┐рд╡рд░реНрддрди рд╣реБрдП рд╣реИрдВред рд▓реЗрдХрд┐рди рдЕрднреА рдХреЗ рд▓рд┐рдП, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдорди рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рднреЛрдЬрди рд╣реЛрдЧрд╛ред