ื•ื•ืึธืก ืื™ื– Windows PowerShell ืื•ืŸ ื•ื•ืึธืก ืื™ื– ืขืก ื’ืขื ื™ืฆื˜ ืคึฟืึทืจ? ื˜ื™ื™ืœ 4: ืืจื‘ืขื˜ืŸ ืžื™ื˜ ืึทื‘ื“ื–ืฉืขืงืฅ, ืื™ื™ื’ืขื ืข ืงืœืืกืŸ

ื•ื•ืึธืก ืื™ื– Windows PowerShell ืื•ืŸ ื•ื•ืึธืก ืื™ื– ืขืก ื’ืขื ื™ืฆื˜ ืคึฟืึทืจ? ื˜ื™ื™ืœ 4: ืืจื‘ืขื˜ืŸ ืžื™ื˜ ืึทื‘ื“ื–ืฉืขืงืฅ, ืื™ื™ื’ืขื ืข ืงืœืืกืŸ

ื“ืขืจ ื˜ืขืงืกื˜ ืจืขื–ื•ืœื˜ืึทื˜ ืคื•ืŸ ืงืึทืžืึทื ื“ื– ืื™ืŸ ื“ื™ PowerShell ื™ื‘ืขืจื–ืขืฆืขืจ ืคึฟืขื ืฆื˜ืขืจ ืื™ื– ื‘ืœื•ื™ื– ืึท ื•ื•ืขื’ ืฆื• ื•ื•ื™ื™ึทื–ืŸ ืื™ื ืคึฟืึธืจืžืึทืฆื™ืข ืื™ืŸ ืึท ืคืึธืจืขื ืคึผืึทืกื™ืง ืคึฟืึทืจ ืžืขื ื˜ืฉ ืžืขืจืงื•ื ื’. ืคืืงื˜ื™ืฉ ืžื™ื˜ื•ื•ืืš ืึธืจื™ืขื ื˜ื™ื“ ืฆื• ืึทืจื‘ืขื˜ืŸ ืžื™ื˜ ืึทื‘ื“ื–ืฉืขืงืฅ: ืงืžื“ืœืขืฅ ืื•ืŸ ืคืึทื ื’ืงืฉืึทื ื– ื‘ืึทืงื•ืžืขืŸ ื–ื™ื™ ื•ื•ื™ ืึทืจื™ื™ึทื ืฉืจื™ื™ึทื‘ ืื•ืŸ ืื•ืžื’ืขืงืขืจื˜ ืื™ืŸ ื“ื™ ืึทืจื•ื™ืกื’ืึทื ื’, ืื•ืŸ ื“ื™ ื•ื•ืขืจื™ืึทื‘ืึทืœ ื˜ื™ื™ืคึผืก ื‘ื ื™ืžืฆื ื™ื ื˜ืขืจืึทืงื˜ื™ื•ื•ืขืœื™ ืื•ืŸ ืื™ืŸ ืกืงืจื™ืคึผืก ื–ืขื ืขืŸ ื‘ืื–ื™ืจื˜ ืื•ื™ืฃ. ื ืขืฅ ืงืœืืกืŸ. ืื™ืŸ ื“ืขืจ ืคืขืจื˜ ืึทืจื˜ื™ืงืœ ืคื•ืŸ ื“ืขืจ ืกืขืจื™ืข, ืžื™ืจ ื•ื•ืขืœืŸ ืœืขืจื ืขืŸ ืžืขืจ ื“ืขื˜ืึทืœ ืืจื‘ืขื˜ืŸ ืžื™ื˜ ืึทื‘ื“ื–ืฉืขืงืฅ.

ืื™ื ื”ืึทืœื˜ ืคื•ืŸ ืื™ื ื”ืึทืœื˜:

ืึทื‘ื“ื–ืฉืขืงืฅ ืื™ืŸ PowerShell
ื•ื•ื™ื•ื™ื ื’ ื“ื™ ืกื˜ืจื•ืงื˜ื•ืจ ืคื•ืŸ ืึทื‘ื“ื–ืฉืขืงืฅ
ืคื™ืœื˜ืขืจื™ื ื’ ืึทื‘ื“ื–ืฉืขืงืฅ
ืกืึธืจื˜ื™ื ื’ ืึทื‘ื“ื–ืฉืขืงืฅ
ืกืขืœืขืงื˜ื™ื ื’ ืึทื‘ื“ื–ืฉืขืงืฅ ืื•ืŸ ื–ื™ื™ืขืจ ื˜ื™ื™ืœืŸ
ืคึฟืึทืจ ื™ืขื“ืขืจ-ืึธื‘ื“ื–ืฉืขืงื˜, ื’ืจื•ืคืข-ืึธื‘ื“ื–ืฉืขืงื˜ ืื•ืŸ ืžืึธืก-ืึธื‘ื“ื–ืฉืขืงื˜
ืงืจื™ื™ื™ื˜ื™ื ื’ .ื ืขื˜ ืื•ืŸ ืงืึทื ืึทื‘ื“ื–ืฉืขืงืฅ (ื ื™ื•-ืึธื‘ื“ื–ืฉืขืงื˜)
ืคืึทืš ืกื˜ืึทื˜ื™ืง ืžืขื˜ื”ืึธื“ืก
ื˜ื™ืคึผ PSCustomObject
ืฉืึทืคึฟืŸ ื“ื™ื™ืŸ ืื™ื™ื’ืขื ืข ืงืœืืกืŸ

ืึทื‘ื“ื–ืฉืขืงืฅ ืื™ืŸ PowerShell

ื–ืืœ ืื•ื ื“ื– ืฆื•ืจื™ืงืจื•ืคืŸ ืึทื– ืึท ื›ื™ื™ืคืขืฅ ืื™ื– ืึท ื–ืึทืžืœื•ื ื’ ืคื•ืŸ ื“ืึทื˜ืŸ ืคืขืœื“ืขืจ (ืคึผืจืึธืคึผืขืจื˜ื™ืขืก, ื’ืขืฉืขืขื ื™ืฉืŸ, ืืื–"ื• ื•) ืื•ืŸ ืžืขื˜ื”ืึธื“ืก ืคึฟืึทืจ ืคึผืจืึทืกืขืกื™ื ื’ ื–ื™ื™ (ืžื™ื˜ืœืขืŸ). ื–ื™ื™ึทืŸ ืกื˜ืจื•ืงื˜ื•ืจ ืื™ื– ืกืคึผืขืกื™ืคื™ืขื“ ื“ื•ืจืš ืึท ื˜ื™ืคึผ, ื•ื•ืึธืก ืื™ื– ื™ื•ื–ืฉืึทื•ื•ืึทืœื™ ื‘ืื–ื™ืจื˜ ืื•ื™ืฃ ืงืœืืกืŸ ื’ืขื ื™ืฆื˜ ืื™ืŸ ื“ื™ ื™ื•ื ืึทืคื™ื™ื“. ื ืขืฅ ืงืึธืจ ืคึผืœืึทื˜ืคืึธืจืžืข. ืขืก ืื™ื– ืื•ื™ืš ืžืขื’ืœืขืš ืฆื• ืึทืจื‘ืขื˜ืŸ ืžื™ื˜ COM, CIM (WMI) ืื•ืŸ ADSI ืึทื‘ื“ื–ืฉืขืงืฅ. ืคึผืจืึธืคึผืขืจื˜ื™ืขืก ืื•ืŸ ืžืขื˜ื”ืึธื“ืก ื–ืขื ืขืŸ ื“ืืจืฃ ืฆื• ื“ื•ืจื›ืคื™ืจืŸ ืคืึทืจืฉื™ื“ืŸ ืึทืงืฉืึทื ื– ืื•ื™ืฃ ื“ืึทื˜ืŸ; ืื™ืŸ ืึทื“ื™ืฉืึทืŸ, ืื™ืŸ PowerShell, ืึทื‘ื“ื–ืฉืขืงืฅ ืงืขื ืขืŸ ื–ื™ื™ืŸ ื“ื•ืจื›ื’ืขื’ืื ื’ืขืŸ ื•ื•ื™ ืึทืจื’ื•ืžืขื ื˜ืŸ ืฆื• ืคืึทื ื’ืงืฉืึทื ื– ืื•ืŸ ืงืžื“ืœืขืฅ, ืึทืกื™ื™ื ื“ ื–ื™ื™ืขืจ ื•ื•ืึทืœื•ืขืก ืฆื• ื•ื•ืขืจื™ืึทื‘ืึทืœื–, ืื•ืŸ ืขืก ืื™ื– ืื•ื™ืš ื‘ืึทืคึฟืขืœืŸ ื–ืึทืฅ ืžืขืงืึทื ื™ื–ืึทื (ืงืึทื ื•ื•ื™ื™ืขืจ ืึธื“ืขืจ ืจืขืจื  - ืœื™ื ื™ืข). ื™ืขื“ืขืจ ื‘ืึทืคึฟืขืœ ืื™ืŸ ื“ื™ ืจืขืจื  - ืœื™ื ื™ืข ืคึผืึทืกื™ื– ื–ื™ื™ืŸ ืจืขื–ื•ืœื˜ืึทื˜ ืฆื• ื“ืขืจ ื•ื•ื™ื™ึทื˜ืขืจ ืื™ื™ื ืขืจ ืื™ืŸ ืงืขืจ, ื›ื™ื™ืคืขืฅ ื“ื•ืจืš ื›ื™ื™ืคืขืฅ. ืคึฟืึทืจ ืคึผืจืึทืกืขืกื™ื ื’, ืื™ืจ ืงืขื ืขืŸ ื ื•ืฆืŸ ืงืึทืžืคึผื™ื™ืœื“ ืงืžื“ืœืขืฅ ืึธื“ืขืจ ืฉืึทืคึฟืŸ ื“ื™ื™ืŸ ืื™ื™ื’ืขื ืข ืึทื•ื•ืึทื ืกื™ืจื˜ืข ืคึฟืขื™ึดืงื™ื™ื˜ืŸืฆื• ื“ื•ืจื›ืคื™ืจืŸ ืคืึทืจืฉื™ื“ืŸ ืžืึทื ื™ืคึผื™ืึทืœื™ื™ืฉืึทื ื– ืžื™ื˜ ืึทื‘ื“ื–ืฉืขืงืฅ ืื™ืŸ ื“ื™ ืจืขืจื  - ืœื™ื ื™ืข: ืคึฟื™ืœื˜ืจื™ืจื•ื ื’, ืกืึธืจื˜ื™ื ื’, ื’ืจื•ืคึผื™ื ื’ ืื•ืŸ ืืคื™ืœื• ื˜ืฉืึทื ื’ื™ื ื’ ื–ื™ื™ืขืจ ืกื˜ืจื•ืงื˜ื•ืจ. ื˜ืจืึทื ืกืžื™ื˜ื™ื ื’ ื“ืึทื˜ืŸ ืื™ืŸ ื“ืขื ืคืึธืจืขื ื”ืื˜ ืึท ืขืจื ืกื˜ ืžื™ื™ึทืœืข: ื“ื™ ืจื™ืกื™ื•ื•ื™ื ื’ ืžืึทื ืฉืึทืคึฟื˜ ื˜ื•ื˜ ื ื™ืฉื˜ ื“ืึทืจืคึฟืŸ ืฆื• ืคึผืึทืจืก ื“ื™ ื‘ื™ื™ื˜ ื˜ื™ื™ึทืš (ื˜ืขืงืกื˜), ืึทืœืข ื“ื™ ื ื™ื™ื˜ื™ืง ืื™ื ืคึฟืึธืจืžืึทืฆื™ืข ืื™ื– ืœื™ื™ื›ื˜ ืจื™ื˜ืจื™ื•ื•ื“ ื“ื•ืจืš ืจื•ืคืŸ ื“ื™ ืฆื•ื ืขืžืขืŸ ืคึผืจืึธืคึผืขืจื˜ื™ืขืก ืื•ืŸ ืžืขื˜ื”ืึธื“ืก.

ื•ื•ื™ื•ื™ื ื’ ื“ื™ ืกื˜ืจื•ืงื˜ื•ืจ ืคื•ืŸ ืึทื‘ื“ื–ืฉืขืงืฅ

ืคึฟืึทืจ ื‘ื™ื™ึทืฉืคึผื™ืœ, ืœืึธื–ืŸ ืื•ื ื“ื– ืœื•ื™ืคืŸ ื“ื™ Get-Process cmdlet, ื•ื•ืึธืก ืึทืœืึทื•ื– ืื™ืจ ืฆื• ื‘ืึทืงื•ืžืขืŸ ืื™ื ืคึฟืึธืจืžืึทืฆื™ืข ื•ื•ืขื’ืŸ ื“ื™ ืคึผืจืึทืกืขืกืึทื– ืคืœื™ืกื ื“ื™ืง ืื™ืŸ ื“ื™ ืกื™ืกื˜ืขื:

ื•ื•ืึธืก ืื™ื– Windows PowerShell ืื•ืŸ ื•ื•ืึธืก ืื™ื– ืขืก ื’ืขื ื™ืฆื˜ ืคึฟืึทืจ? ื˜ื™ื™ืœ 4: ืืจื‘ืขื˜ืŸ ืžื™ื˜ ืึทื‘ื“ื–ืฉืขืงืฅ, ืื™ื™ื’ืขื ืข ืงืœืืกืŸ

ืขืก ื•ื•ืขื˜ ื•ื•ื™ื™ึทื–ืŸ ืขื˜ืœืขื›ืข ืคึฟืึธืจืžืึทื˜ื™ืจื˜ ื˜ืขืงืกื˜ ื“ืึทื˜ืŸ ื•ื•ืึธืก ื˜ืึธืŸ ื ื™ื˜ ื’ืขื‘ืŸ ืงื™ื™ืŸ ื’ืขื“ืึทื ืง ื•ื•ืขื’ืŸ ื“ื™ ืคึผืจืึธืคึผืขืจื˜ื™ืขืก ืคื•ืŸ ื“ื™ ืื•ืžื’ืขืงืขืจื˜ ืึทื‘ื“ื–ืฉืขืงืฅ ืื•ืŸ ื–ื™ื™ืขืจ ืžืขื˜ื”ืึธื“ืก. ืฆื• ืคื™ื™ืŸ-ื˜ื•ืŸ ื“ื™ ืจืขื–ื•ืœื˜ืึทื˜, ืžื™ืจ ื“ืึทืจืคึฟืŸ ืฆื• ืœืขืจื ืขืŸ ื•ื•ื™ ืฆื• ื•ื ื˜ืขืจื–ื•ื›ืŸ ื“ื™ ืกื˜ืจื•ืงื˜ื•ืจ ืคื•ืŸ ืึทื‘ื“ื–ืฉืขืงืฅ, ืื•ืŸ ื“ื™ Get-Member cmdlet ื•ื•ืขื˜ ื”ืขืœืคึฟืŸ ืื•ื ื“ื– ืžื™ื˜ ื“ืขื:

Get-Process | Get-Member

ื•ื•ืึธืก ืื™ื– Windows PowerShell ืื•ืŸ ื•ื•ืึธืก ืื™ื– ืขืก ื’ืขื ื™ืฆื˜ ืคึฟืึทืจ? ื˜ื™ื™ืœ 4: ืืจื‘ืขื˜ืŸ ืžื™ื˜ ืึทื‘ื“ื–ืฉืขืงืฅ, ืื™ื™ื’ืขื ืข ืงืœืืกืŸ

ื“ืึธ ืžื™ืจ ืฉื•ื™ืŸ ื–ืขืŸ ื“ื™ ื˜ื™ืคึผ ืื•ืŸ ืกื˜ืจื•ืงื˜ื•ืจ, ืื•ืŸ ืžื™ื˜ ื“ื™ ื”ื™ืœืฃ ืคื•ืŸ ื ืึธืš ืคึผืึทืจืึทืžืขื˜ืขืจืก ืžื™ืจ ืงืขื ืขืŸ, ืคึฟืึทืจ ื‘ื™ื™ึทืฉืคึผื™ืœ, ื•ื•ื™ื™ึทื–ืŸ ื‘ืœื•ื™ื– ื“ื™ ืคึผืจืึธืคึผืขืจื˜ื™ืขืก ืคื•ืŸ ื“ื™ ื›ื™ื™ืคืขืฅ ืึทืจื™ื™ึทื ื’ืขืจืขื›ื ื˜ ืื™ืŸ ื“ื™ ืึทืจื™ื™ึทื ืฉืจื™ื™ึทื‘:

Get-Process | Get-Member -MemberType Property

ื“ื™ ื•ื•ื™ืกืŸ ื•ื•ืขื˜ ื–ื™ื™ืŸ ื“ืืจืฃ ืฆื• ืกืึธืœื•ื•ืข ืึทื“ืžื™ื ื™ืกื˜ืจืึทื˜ื™ืึธืŸ ืคึผืจืึธื‘ืœืขืžืก ื™ื ื˜ืขืจืึทืงื˜ื™ื•ื•ืขืœื™ ืึธื“ืขืจ ืฆื• ืฉืจื™ื™ึทื‘ืŸ ื“ื™ื™ืŸ ืื™ื™ื’ืขื ืข ืกืงืจื™ืคึผืก: ืคึฟืึทืจ ื‘ื™ื™ึทืฉืคึผื™ืœ, ืฆื• ื‘ืึทืงื•ืžืขืŸ ืื™ื ืคึฟืึธืจืžืึทืฆื™ืข ื•ื•ืขื’ืŸ ื›ืึทื ื’ื“ ืคึผืจืึทืกืขืกืึทื– ื ื™ืฆืŸ ื“ื™ ืจื™ืกืคึผืึทื ื“ื™ื ื’ ืคืึทืจืžืึธื’.

ืคื™ืœื˜ืขืจื™ื ื’ ืึทื‘ื“ื–ืฉืขืงืฅ

PowerShell ืึทืœืึทื•ื– ืึทื‘ื“ื–ืฉืขืงืฅ ื•ื•ืึธืก ื˜ืจืขืคืŸ ืึท ื–ื™ื›ืขืจ ืฆื•ืฉื˜ืึทื ื“ ืฆื• ื–ื™ื™ืŸ ื“ื•ืจื›ื’ืขื’ืื ื’ืขืŸ ื“ื•ืจืš ืึท ืจืขืจื  - ืœื™ื ื™ืข:

Where-Object { ะฑะปะพะบ ัั†ะตะฝะฐั€ะธั }

ื“ืขืจ ืจืขื–ื•ืœื˜ืึทื˜ ืคื•ืŸ ืขืงืกืึทืงื™ื•ื˜ื™ื ื’ ื“ื™ ืฉืจื™ืคื˜ ื‘ืœืึธืง ืื™ืŸ ื“ื™ ืงืœืึทืžืขืจืŸ ืžื•ื–ืŸ ื–ื™ื™ืŸ ืึท ื‘ื•ืœื™ืึทืŸ ื•ื•ืขืจื˜. ืื•ื™ื‘ ืขืก ืื™ื– ืืžืช ($ ืืžืช), ื“ื™ ื›ื™ื™ืคืขืฅ ื•ื•ืึธืก ืื™ื– ืึทืจื™ื™ึทื ืฉืจื™ื™ึทื‘ ืฆื• ื“ื™ Where-Object cmdlet ื•ื•ืขื˜ ื–ื™ื™ืŸ ื“ื•ืจื›ื’ืขื’ืื ื’ืขืŸ ืฆื•ื–ืืžืขืŸ ื“ื™ ืจืขืจื  - ืœื™ื ื™ืข, ืึทื ื“ืขืจืฉ ($ ืคืึทืœืฉ) ืขืก ื•ื•ืขื˜ ื–ื™ื™ืŸ ืื•ื™ืกื’ืขืžืขืงื˜. ืคึฟืึทืจ ื‘ื™ื™ึทืฉืคึผื™ืœ, ืœืึธื–ืŸ ืก ื•ื•ื™ื™ึทื–ืŸ ืึท ืจืฉื™ืžื” ืคื•ืŸ ืคืืจืฉื˜ืืคื˜ Windows Server ื‘ืึทื“ื™ื ื•ื ื’ืก, ื“.ื”. ื™ืขื ืข ื•ื•ืขืžืขื ืก ืกื˜ืึทื˜ื•ืก ืคืึทืจืžืึธื’ ืื™ื– ื‘ืึทืฉื˜ื™ืžื˜ ืฆื• "ืกื˜ืึทืคึผื˜":

Get-Service | Where-Object {$_.Status -eq "Stopped"}

ื•ื•ืึธืก ืื™ื– Windows PowerShell ืื•ืŸ ื•ื•ืึธืก ืื™ื– ืขืก ื’ืขื ื™ืฆื˜ ืคึฟืึทืจ? ื˜ื™ื™ืœ 4: ืืจื‘ืขื˜ืŸ ืžื™ื˜ ืึทื‘ื“ื–ืฉืขืงืฅ, ืื™ื™ื’ืขื ืข ืงืœืืกืŸ

ื“ืึธ ื•ื•ื™ื“ืขืจ ืžื™ืจ ื–ืขืŸ ืึท ื˜ืขืงืกื˜ืฉืึทื•ื•ืึทืœ ืคืึทืจื˜ืจืขื˜ื•ื ื’, ืึธื‘ืขืจ ืื•ื™ื‘ ืื™ืจ ื•ื•ื™ืœืŸ ืฆื• ืคึฟืึทืจืฉื˜ื™ื™ืŸ ื“ื™ ื˜ื™ืคึผ ืื•ืŸ ื™ื ืขืจืœืขืš ืกื˜ืจื•ืงื˜ื•ืจ ืคื•ืŸ ื“ื™ ืึทื‘ื“ื–ืฉืขืงืฅ ื•ื•ืึธืก ืคืึธืจืŸ ื“ื•ืจืš ื“ื™ ืจืขืจื  - ืœื™ื ื™ืข, ื“ืึธืก ืื™ื– ื ื™ืฉื˜ ืฉื•ื•ืขืจ:

Get-Service | Where-Object {$_.Status -eq "Stopped"} | Get-Member

ื•ื•ืึธืก ืื™ื– Windows PowerShell ืื•ืŸ ื•ื•ืึธืก ืื™ื– ืขืก ื’ืขื ื™ืฆื˜ ืคึฟืึทืจ? ื˜ื™ื™ืœ 4: ืืจื‘ืขื˜ืŸ ืžื™ื˜ ืึทื‘ื“ื–ืฉืขืงืฅ, ืื™ื™ื’ืขื ืข ืงืœืืกืŸ

ืกืึธืจื˜ื™ื ื’ ืึทื‘ื“ื–ืฉืขืงืฅ

ื•ื•ืขืŸ ืจืขืจื  - ืœื™ื ื™ืข ืคึผืจืึทืกืขืกื™ื ื’ ืคื•ืŸ ืึทื‘ื“ื–ืฉืขืงืฅ, ืขืก ืื™ื– ืึธืคื˜ ืึท ื ื•ื™ื˜ ืฆื• ืกืึธืจื˜ ื–ื™ื™. ื“ื™ ืกืึธืจื˜-ืึธื‘ื“ื–ืฉืขืงื˜ ืงืžื“ืœืขื˜ ืื™ื– ื“ื•ืจื›ื’ืขื’ืื ื’ืขืŸ ื“ื™ ื ืขืžืขืŸ ืคื•ืŸ ืคึผืจืึธืคึผืขืจื˜ื™ืขืก (ืกืึธืจื˜ื™ื ื’ ืฉืœื™ืกืœืขืŸ) ืื•ืŸ ืงืขืจื˜ ืึทื‘ื“ื–ืฉืขืงืฅ ืึธืจื“ืขืจื“ ืœื•ื™ื˜ ื–ื™ื™ืขืจ ื•ื•ืึทืœื•ืขืก. ืขืก ืื™ื– ื’ืจื™ื ื’ ืฆื• ืกืึธืจื˜ ื“ื™ ืจืขื–ื•ืœื˜ืึทื˜ ืคื•ืŸ ืคืœื™ืกื ื“ื™ืง ืคึผืจืึทืกืขืกืึทื– ืœื•ื™ื˜ ืงืคึผื• ืฆื™ื™ื˜ ืคืืจื‘ืจืื›ื˜ (ืงืคึผื• ืคืึทืจืžืึธื’):

Get-Process | Sort-Object โ€“Property cpu

ื“ื™ -ืคึผืจืึธืคึผืขืจื˜ื™ ืคึผืึทืจืึทืžืขื˜ืขืจ ืงืขื ืขืŸ ื–ื™ื™ืŸ ืื™ื‘ืขืจื’ืขื”ื™ืคึผืขืจื˜ ื•ื•ืขืŸ ืื™ืจ ืจื•ืคืŸ ื“ื™ Sort-Object cmdlet; ืขืก ืื™ื– ื’ืขื ื™ืฆื˜ ื“ื•ืจืš ืคืขืœื™ืงื™ื™ึทื˜. ืคึฟืึทืจ ืคืึทืจืงืขืจื˜ ืกืึธืจื˜ื™ื ื’, ื ื•ืฆืŸ ื“ื™ -ื“ืขืกืกืขื ื“ื™ื ื’ ืคึผืึทืจืึทืžืขื˜ืขืจ:

Get-Process | Sort-Object cpu -Descending

ื•ื•ืึธืก ืื™ื– Windows PowerShell ืื•ืŸ ื•ื•ืึธืก ืื™ื– ืขืก ื’ืขื ื™ืฆื˜ ืคึฟืึทืจ? ื˜ื™ื™ืœ 4: ืืจื‘ืขื˜ืŸ ืžื™ื˜ ืึทื‘ื“ื–ืฉืขืงืฅ, ืื™ื™ื’ืขื ืข ืงืœืืกืŸ

ืกืขืœืขืงื˜ื™ื ื’ ืึทื‘ื“ื–ืฉืขืงืฅ ืื•ืŸ ื–ื™ื™ืขืจ ื˜ื™ื™ืœืŸ

ื“ื™ ืกืขืœืขืงื˜-ืึธื‘ื“ื–ืฉืขืงื˜ ืงืžื“ืœืขื˜ ืึทืœืึทื•ื– ืื™ืจ ืฆื• ืื•ื™ืกืงืœื™ื™ึทื‘ืŸ ืึท ืกืคึผืขืฆื™ืคื™ืฉ ื ื•ืžืขืจ ืคื•ืŸ ืึทื‘ื“ื–ืฉืขืงืฅ ืื™ืŸ ื“ื™ ืึธื ื”ื™ื™ื‘ ืึธื“ืขืจ ืกื•ืฃ ืคื•ืŸ ืึท ืจืขืจื  - ืœื™ื ื™ืข ื ื™ืฆืŸ ื“ื™ -ืขืจืฉื˜ืขืจ ืึธื“ืขืจ -ืœืึทืกื˜ ืคึผืึทืจืึทืžืขื˜ืขืจืก. ืžื™ื˜ ื–ื™ื™ืŸ ื”ื™ืœืฃ, ืื™ืจ ืงืขื ืขืŸ ืื•ื™ืกืงืœื™ื™ึทื‘ืŸ ืื™ื™ืŸ ืึทื‘ื“ื–ืฉืขืงืฅ ืึธื“ืขืจ ื–ื™ื›ืขืจ ืคึผืจืึธืคึผืขืจื˜ื™ืขืก, ืื•ืŸ ืื•ื™ืš ืฉืึทืคึฟืŸ ื ื™ื™ึทืข ืึทื‘ื“ื–ืฉืขืงืฅ ื‘ืื–ื™ืจื˜ ืื•ื™ืฃ ื–ื™ื™. ื–ืืœ ืก ืงื•ืง ื•ื•ื™ ื“ื™ ืงืžื“ืœืขื˜ ืึทืจื‘ืขื˜ ืžื™ื˜ ืคึผืฉื•ื˜ ื‘ื™ื™ืฉืคื™ืœืŸ.

ื“ื™ ืคืืœื’ืขื ื“ืข ื‘ืึทืคึฟืขืœ ื“ื™ืกืคึผืœื™ื™ื– ืื™ื ืคึฟืึธืจืžืึทืฆื™ืข ื•ื•ืขื’ืŸ ื“ื™ 10 ืคึผืจืึทืกืขืกืึทื– ืงืึทื ืกื•ืžื™ื ื’ ื“ื™ ืžืึทืงืกื™ืžื•ื ืกื•ืžืข ืคื•ืŸ โ€‹โ€‹ื‘ืึทืจืึทืŸ (WS ืคืึทืจืžืึธื’):

Get-Process | Sort-Object WS -Descending | Select-Object -First 10

ื•ื•ืึธืก ืื™ื– Windows PowerShell ืื•ืŸ ื•ื•ืึธืก ืื™ื– ืขืก ื’ืขื ื™ืฆื˜ ืคึฟืึทืจ? ื˜ื™ื™ืœ 4: ืืจื‘ืขื˜ืŸ ืžื™ื˜ ืึทื‘ื“ื–ืฉืขืงืฅ, ืื™ื™ื’ืขื ืข ืงืœืืกืŸ

ืื™ืจ ืงืขื ืขืŸ ืื•ื™ืกืงืœื™ื™ึทื‘ืŸ ื‘ืœื•ื™ื– ื–ื™ื›ืขืจ ืคึผืจืึธืคึผืขืจื˜ื™ืขืก ืคื•ืŸ ืึทื‘ื“ื–ืฉืขืงืฅ ื•ื•ืึธืก ืคืึธืจืŸ ื“ื•ืจืš ื“ื™ ืจืขืจื  - ืœื™ื ื™ืข ืื•ืŸ ืฉืึทืคึฟืŸ ื ื™ื™ึทืข ื‘ืื–ื™ืจื˜ ืื•ื™ืฃ ื–ื™ื™:

Get-Process | Select-Object ProcessName, Id -First 1

ื•ื•ื™ ืึท ืจืขื–ื•ืœื˜ืึทื˜ ืคื•ืŸ ื“ื™ ืึธืคึผืขืจืึทืฆื™ืข ืคื•ืŸ โ€‹โ€‹ื“ื™ ืจืขืจื  - ืœื™ื ื™ืข, ืžื™ืจ ื•ื•ืขืœืŸ ื‘ืึทืงื•ืžืขืŸ ืึท ื ื™ื™ึทืข ื›ื™ื™ืคืขืฅ, ื“ื™ ืกื˜ืจื•ืงื˜ื•ืจ ืคื•ืŸ ื•ื•ืึธืก ื•ื•ืขื˜ ื–ื™ื™ืŸ ืึทื ื“ืขืจืฉ ืคื•ืŸ ื“ื™ ืกื˜ืจื•ืงื˜ื•ืจ ืื•ืžื’ืขืงืขืจื˜ ื“ื•ืจืš ื“ื™ Get-Process cmdlet. ืœืึธืžื™ืจ ื‘ืึทืฉื˜ืขื˜ื™ืงืŸ ื“ืขื ืžื™ื˜ Get-Member:

Get-Process | Select-Object ProcessName, Id -First 1 | Get-Member

ื•ื•ืึธืก ืื™ื– Windows PowerShell ืื•ืŸ ื•ื•ืึธืก ืื™ื– ืขืก ื’ืขื ื™ืฆื˜ ืคึฟืึทืจ? ื˜ื™ื™ืœ 4: ืืจื‘ืขื˜ืŸ ืžื™ื˜ ืึทื‘ื“ื–ืฉืขืงืฅ, ืื™ื™ื’ืขื ืข ืงืœืืกืŸ

ื‘ืึทืžืขืจืงื•ื ื’ ืึทื– ืกืขืœืขืงื˜-ืึธื‘ื“ื–ืฉืขืงื˜ ืงืขืจื˜ ืึท ืื™ื™ืŸ ื›ื™ื™ืคืขืฅ (-ืขืจืฉื˜ืขืจ 1) ื•ื•ืึธืก ื”ืื˜ ื‘ืœื•ื™ื– ืฆื•ื•ื™ื™ ืคื•ืŸ ื“ื™ ืคืขืœื“ืขืจ ื•ื•ืึธืก ืžื™ืจ ืกืคึผืขืกื™ืคื™ืขื“: ื–ื™ื™ืขืจ ื•ื•ืึทืœื•ืขืก ื–ืขื ืขืŸ ืงืึทืคึผื™ื“ ืคึฟื•ืŸ ื“ืขืจ ืขืจืฉื˜ืขืจ ื›ื™ื™ืคืขืฅ ื“ื•ืจื›ื’ืขื’ืื ื’ืขืŸ ืื™ืŸ ื“ื™ ืจืขืจื  - ืœื™ื ื™ืข ื“ื•ืจืš ื“ื™ ืงืžื“ืœืขื˜ Get-Process. ืื™ื™ื ืขืจ ืคื•ืŸ ื“ื™ ื•ื•ืขื’ืŸ ืฆื• ืฉืึทืคึฟืŸ ืึทื‘ื“ื–ืฉืขืงืฅ ืื™ืŸ PowerShell ืกืงืจื™ืคึผืก ืื™ื– ื‘ืื–ื™ืจื˜ ืื•ื™ืฃ ื ื™ืฆืŸ Select-Object:

$obj = Get-Process | Select-Object ProcessName, Id -First 1
$obj.GetType()

ื•ื•ืึธืก ืื™ื– Windows PowerShell ืื•ืŸ ื•ื•ืึธืก ืื™ื– ืขืก ื’ืขื ื™ืฆื˜ ืคึฟืึทืจ? ื˜ื™ื™ืœ 4: ืืจื‘ืขื˜ืŸ ืžื™ื˜ ืึทื‘ื“ื–ืฉืขืงืฅ, ืื™ื™ื’ืขื ืข ืงืœืืกืŸ

ื ื™ืฆืŸ ืกืขืœืขืงื˜-ืึธื‘ื“ื–ืฉืขืงื˜, ืื™ืจ ืงืขื ืขืŸ ืœื™ื™ื’ืŸ ืงืึทืžืคึผื™ื•ื˜ืึทื“ ืคึผืจืึธืคึผืขืจื˜ื™ืขืก ืฆื• ืึทื‘ื“ื–ืฉืขืงืฅ ื•ื•ืึธืก ื“ืึทืจืคึฟืŸ ืฆื• ื–ื™ื™ืŸ ืจืขืคึผืจื™ื–ืขื ื˜ื™ื“ ื•ื•ื™ ื”ืึทืฉ ื˜ื™ืฉืŸ. ืื™ืŸ ื“ืขื ืคืึทืœ, ื“ื™ ื•ื•ืขืจื˜ ืคื•ืŸ ื–ื™ื™ึทืŸ ืขืจืฉื˜ืขืจ ืฉืœื™ืกืœ ืงืึธืจืึทืกืคึผืึทื ื“ื– ืฆื• ื“ื™ ืคืึทืจืžืึธื’ ื ืึธืžืขืŸ, ืื•ืŸ ื“ื™ ื•ื•ืขืจื˜ ืคื•ืŸ ื“ื™ ืจื’ืข ืฉืœื™ืกืœ ืงืึธืจืึทืกืคึผืึทื ื“ื– ืฆื• ื“ื™ ืคืึทืจืžืึธื’ ื•ื•ืขืจื˜ ืคึฟืึทืจ ื“ื™ ืงืจืึทื ื˜ ืจืขืจื  - ืœื™ื ื™ืข ืขืœืขืžืขื ื˜:

Get-Process | Select-Object -Property ProcessName, @{Name="StartTime"; Expression = {$_.StartTime.Minute}}

ื•ื•ืึธืก ืื™ื– Windows PowerShell ืื•ืŸ ื•ื•ืึธืก ืื™ื– ืขืก ื’ืขื ื™ืฆื˜ ืคึฟืึทืจ? ื˜ื™ื™ืœ 4: ืืจื‘ืขื˜ืŸ ืžื™ื˜ ืึทื‘ื“ื–ืฉืขืงืฅ, ืื™ื™ื’ืขื ืข ืงืœืืกืŸ

ื–ืืœ ืก ืงื•ืง ืื™ืŸ ื“ื™ ืกื˜ืจื•ืงื˜ื•ืจ ืคื•ืŸ ืึทื‘ื“ื–ืฉืขืงืฅ ื•ื•ืึธืก ืคืึธืจืŸ ื“ื•ืจืš ื“ื™ ืงืึทื ื•ื•ื™ื™ืขืจ:

Get-Process | Select-Object -Property ProcessName, @{Name="StartTime"; Expression = {$_.StartTime.Minute}} | Get-Member

ื•ื•ืึธืก ืื™ื– Windows PowerShell ืื•ืŸ ื•ื•ืึธืก ืื™ื– ืขืก ื’ืขื ื™ืฆื˜ ืคึฟืึทืจ? ื˜ื™ื™ืœ 4: ืืจื‘ืขื˜ืŸ ืžื™ื˜ ืึทื‘ื“ื–ืฉืขืงืฅ, ืื™ื™ื’ืขื ืข ืงืœืืกืŸ

ืคึฟืึทืจ ื™ืขื“ืขืจ-ืึธื‘ื“ื–ืฉืขืงื˜, ื’ืจื•ืคืข-ืึธื‘ื“ื–ืฉืขืงื˜ ืื•ืŸ ืžืึธืก-ืึธื‘ื“ื–ืฉืขืงื˜

ืขืก ื–ืขื ืขืŸ ืื ื“ืขืจืข ืงืžื“ืœืขืฅ ืคึฟืึทืจ ืืจื‘ืขื˜ืŸ ืžื™ื˜ ืึทื‘ื“ื–ืฉืขืงืฅ. ื•ื•ื™ ืึท ื‘ื™ื™ึทืฉืคึผื™ืœ, ืœืึธื–ืŸ ืื•ื ื“ื– ืจืขื“ืŸ ื•ื•ืขื’ืŸ ื“ื™ ื“ืจื™ื™ ืžืขืจืกื˜ ื ื•ืฆื™ืง:

ืคืึธืจืขืึทื˜ืฉ-ื›ื™ื™ืคืขืฅ ืึทืœืึทื•ื– ืื™ืจ ืฆื• ืœื•ื™ืคืŸ PowerShell ืงืึธื“ ืคึฟืึทืจ ื™ืขื“ืขืจ ื›ื™ื™ืคืขืฅ ืื™ืŸ ื“ื™ ืจืขืจื  - ืœื™ื ื™ืข:

ForEach-Object { ะฑะปะพะบ ัั†ะตะฝะฐั€ะธั }

ื’ืจื•ืคืข-ืึธื‘ื“ื–ืฉืขืงื˜ ื’ืจื•ืคึผืขืก ืึทื‘ื“ื–ืฉืขืงืฅ ืœื•ื™ื˜ ืคืึทืจืžืึธื’ ื•ื•ืขืจื˜:

Group-Object PropertyName

ืื•ื™ื‘ ืื™ืจ ืœื•ื™ืคืŸ ืขืก ืžื™ื˜ ื“ื™ -NoElement ืคึผืึทืจืึทืžืขื˜ืขืจ, ืื™ืจ ืงืขื ืขืŸ ื’ืขืคึฟื™ื ืขืŸ ื“ื™ ื ื•ืžืขืจ ืคื•ืŸ ืขืœืขืžืขื ื˜ืŸ ืื™ืŸ ื“ื™ ื’ืจื•ืคึผืขืก.

ืžืึธืก-ืึธื‘ื“ื–ืฉืขืงื˜ ืึทื’ื’ืจืขื’ืึทื˜ืขื“ ืคืึทืจืฉื™ื“ืŸ ืงื™ืฆืขืจ ืคึผืึทืจืึทืžืขื˜ืขืจืก ื“ื•ืจืš ื“ื™ ื•ื•ืึทืœื•ืขืก ืคื•ืŸ ื“ื™ ื›ื™ื™ืคืขืฅ ืคืขืœื“ ืื™ืŸ ื“ื™ ืจืขืจื  - ืœื™ื ื™ืข (ืงืึทืœืงื™ืึทืœื™ื™ืฅ ื“ื™ ืกืึทื›ืึทืงืœ, ืื•ืŸ ืื•ื™ืš ื’ืขืคื™ื ื˜ ื“ื™ ืžื™ื ื™ืžื•ื, ืžืึทืงืกื™ืžื•ื ืึธื“ืขืจ ื“ื•ืจื›ืฉื ื™ื˜ืœืขืš ื•ื•ืขืจื˜):

Measure-Object -Property PropertyName -Minimum -Maximum -Average -Sum

ื˜ื™ืคึผื™ืงืึทืœืœื™, ื“ื™ ืงืžื“ืœืขืฅ ื“ื™ืกืงืึทืกื˜ ื–ืขื ืขืŸ ื™ื ื˜ืขืจืึทืงื˜ื™ื•ื•ืœื™ ื’ืขื ื™ืฆื˜ ืื•ืŸ ื–ืขื ืขืŸ ืึธืคื˜ ื‘ืืฉืืคืŸ ืื™ืŸ ืกืงืจื™ืคึผืก. function ืžื™ื˜ ืึธื ื”ื™ื™ื‘ืŸ, ืคึผืจืึธืฆืขืก ืื•ืŸ ืกื•ืฃ ื‘ืœืึทืงืก.

ืงืจื™ื™ื™ื˜ื™ื ื’ .ื ืขื˜ ืื•ืŸ ืงืึทื ืึทื‘ื“ื–ืฉืขืงืฅ (ื ื™ื•-ืึธื‘ื“ื–ืฉืขืงื˜)

ืขืก ื–ืขื ืขืŸ ืคื™ืœืข ื•ื•ื™ื™ื›ื•ื•ืืจื’ ืงืึทืžืคึผืึธื•ื ืึทื ืฅ ืžื™ื˜. ื ืขืฅ ืงืึธืจ ืื•ืŸ ืงืึทื ื™ื ื˜ืขืจืคื™ื™ืกื™ื– ื•ื•ืึธืก ื–ืขื ืขืŸ ื ื•ืฆื™ืง ืคึฟืึทืจ ืกื™ืกื˜ืขื ืึทื“ืžื™ื ื™ืกื˜ืจืึทื˜ืึธืจืก. ื ื™ืฆืŸ ื“ื™ System.Diagnostics.EventLog ืงืœืึทืก, ืื™ืจ ืงืขื ืขืŸ ืคื™ืจืŸ ืกื™ืกื˜ืขื ืœืึธื’ืก ื’ืœื™ื™ึทืš ืคึฟื•ืŸ Windows PowerShell. ืœืึธืžื™ืจ ืงื•ืงืŸ ืื™ืŸ ืึท ื‘ื™ื™ืฉืคึผื™ืœ ืคื•ืŸ ืงืจื™ื™ื™ื˜ื™ื ื’ ืึท ื‘ื™ื™ึทืฉืคึผื™ืœ ืคื•ืŸ ื“ืขื ืงืœืึทืก ื ื™ืฆืŸ ื“ื™ New-Object cmdlet ืžื™ื˜ ื“ื™ -TypeName ืคึผืึทืจืึทืžืขื˜ืขืจ:

New-Object -TypeName System.Diagnostics.EventLog

ื•ื•ืึธืก ืื™ื– Windows PowerShell ืื•ืŸ ื•ื•ืึธืก ืื™ื– ืขืก ื’ืขื ื™ืฆื˜ ืคึฟืึทืจ? ื˜ื™ื™ืœ 4: ืืจื‘ืขื˜ืŸ ืžื™ื˜ ืึทื‘ื“ื–ืฉืขืงืฅ, ืื™ื™ื’ืขื ืข ืงืœืืกืŸ

ื–ื™ื ื˜ ืžื™ืจ ื”ืึธื‘ืŸ ื ื™ืฉื˜ ืกืคึผืขืฆื™ืคื™ืฆื™ืจื˜ ืึท ืกืคึผืขืฆื™ืคื™ืฉ ื’ืขืฉืขืขื ื™ืฉ ืงืœืึธืฅ, ื“ื™ ืจื™ื–ืึทืœื˜ื™ื ื’ ื‘ื™ื™ึทืฉืคึผื™ืœ ืคื•ืŸ ื“ื™ ืงืœืึทืก ื›ึผื•ืœืœ ืงื™ื™ืŸ ื“ืึทื˜ืŸ. ืฆื• ื˜ื•ื™ืฉืŸ ื“ืขื, ืื™ืจ ื“ืึทืจืคึฟืŸ ืฆื• ืจื•ืคืŸ ืึท ืกืคึผืขืฆื™ืขืœ ืงืึทื ืกื˜ืจืึทืงื˜ืขืจ ืื•ืคึฟืŸ ื‘ืขืฉืึทืก ื–ื™ื™ืŸ ืฉืึทืคื•ื ื’ ื ื™ืฆืŸ ื“ื™ -ArgumentList ืคึผืึทืจืึทืžืขื˜ืขืจ. ืื•ื™ื‘ ืžื™ืจ ื•ื•ื™ืœืŸ ืฆื• ืึทืงืกืขืก ื“ื™ ืึทืคึผืœืึทืงื™ื™ืฉืึทืŸ ืงืœืึธืฅ, ืžื™ืจ ื–ืึธืœ ืคืึธืจืŸ ื“ื™ ืฉื˜ืจื™ืงืœ "ืึทืคึผืคึผืœื™ืงืึทื˜ื™ืึธืŸ" ื•ื•ื™ ืึทืŸ ืึทืจื’ื•ืžืขื ื˜ ืฆื• ื“ื™ ืงืึธื ืกื˜ืจื•ืงื˜ืึธืจ:

$AppLog = New-Object -TypeName System.Diagnostics.EventLog -ArgumentList Application
$AppLog

ื•ื•ืึธืก ืื™ื– Windows PowerShell ืื•ืŸ ื•ื•ืึธืก ืื™ื– ืขืก ื’ืขื ื™ืฆื˜ ืคึฟืึทืจ? ื˜ื™ื™ืœ 4: ืืจื‘ืขื˜ืŸ ืžื™ื˜ ืึทื‘ื“ื–ืฉืขืงืฅ, ืื™ื™ื’ืขื ืข ืงืœืืกืŸ

ื‘ื™ื˜ืข ื˜ืึธืŸ ืึทื– ืžื™ืจ ื’ืขืจืื˜ืขื•ื•ืขื˜ ื“ื™ ืจืขื–ื•ืœื˜ืึทื˜ ืคื•ืŸ ื“ื™ ื‘ืึทืคึฟืขืœ ืื™ืŸ ื“ื™ $ ืึทืคึผืคึผืœืึธื’ ื‘ื™ื™ึทื˜ืขื•ื•ื“ื™ืง. ื›ืึธื˜ืฉ ืคึผื™ื™ืคึผืœื™ื™ื ื– ื–ืขื ืขืŸ ืงืึทืžืึทื ืœื™ ื’ืขื ื™ืฆื˜ ืื™ืŸ ื™ื ื˜ืขืจืึทืงื˜ื™ื•ื• ืžืึธื“ืข, ืฉืจื™ื™ื‘ืŸ ืกืงืจื™ืคึผืก ืึธืคื˜ ืจื™ืงื•ื•ื™ื™ืขืจื– ืึท ืจืขืคึฟืขืจืขื ืฅ ืฆื• ืึท ื›ื™ื™ืคืขืฅ. ืึทื“ื“ื™ื˜ื™ืึธื ืึทืœืœื™, ื“ื™ ื”ืึทืจืฅ. ื ืขืฅ ืงืึธืจ ืงืœืืกืŸ ื–ืขื ืขืŸ ืงืึทื ื˜ื™ื™ื ื“ ืื™ืŸ ื“ื™ ืกื™ืกื˜ืขื ื ืึทืžืขืกืคึผืึทืกืข: ืคึผืึธื•ื•ืขืจืฉืขืœืœ ื“ื•ืจืš ืคืขืœื™ืงื™ื™ึทื˜ ืงื•ืงื˜ ืคึฟืึทืจ ืกืคึผืขืกื™ืคื™ืขื“ ื˜ื™ื™ืคึผืก ืื™ืŸ ืขืก, ืึทื–ื•ื™ ืฉืจื™ื™ื‘ืŸ ื“ื™ืึทื’ื ืึธืกื˜ื™ืงืก.ืขื•ื•ืขื ื˜ืœืึธื’ ืึทื ืฉื˜ืึธื˜ ืคื•ืŸ System.Diagnostics.EventLog ืื™ื– ื’ืึทื ืฅ ืจื™ื›ื˜ื™ืง.

ืฆื• ืึทืจื‘ืขื˜ืŸ ืžื™ื˜ ื“ื™ ืงืœืึธืฅ, ืื™ืจ ืงืขื ืขืŸ ื ื•ืฆืŸ ื“ื™ ืฆื•ื ืขืžืขืŸ ืžืขื˜ื”ืึธื“ืก:

$AppLog | Get-Member -MemberType Method

ื•ื•ืึธืก ืื™ื– Windows PowerShell ืื•ืŸ ื•ื•ืึธืก ืื™ื– ืขืก ื’ืขื ื™ืฆื˜ ืคึฟืึทืจ? ื˜ื™ื™ืœ 4: ืืจื‘ืขื˜ืŸ ืžื™ื˜ ืึทื‘ื“ื–ืฉืขืงืฅ, ืื™ื™ื’ืขื ืข ืงืœืืกืŸ

ื–ืืœ ืก ื–ืึธื’ืŸ ืขืก ืื™ื– ืงืœื™ืจื“ ื“ื•ืจืš ื“ื™ ืงืœืึธืจ () ืื•ืคึฟืŸ ืื•ื™ื‘ ืขืก ื–ืขื ืขืŸ ืึทืงืกืขืก ืจืขื›ื˜:

$AppLog.Clear()

ื“ื™ New-Object cmdlet ืื™ื– ืื•ื™ืš ื’ืขื ื™ืฆื˜ ืฆื• ืึทืจื‘ืขื˜ืŸ ืžื™ื˜ COM ืงืึทืžืคึผืึธื•ื ืึทื ืฅ. ืขืก ื–ืขื ืขืŸ ื’ืึทื ืฅ ืึท ืคึผืœืึทืฅ ืคื•ืŸ ื–ื™ื™ - ืคึฟื•ืŸ ื“ื™ ืœื™ื™ื‘ืจืขืจื™ื– ืกืึทืคึผืœื™ื™ื“ ืžื™ื˜ ื“ื™ Windows ืฉืจื™ืคื˜ ืกืขืจื•ื•ืขืจ ืฆื• ืึทืงื˜ื™ื•ื•ืขืงืก ืึทืคึผืœืึทืงื™ื™ืฉืึทื ื–, ืึทื–ืึท ื•ื•ื™ Internet Explorer. ืฆื• ืฉืึทืคึฟืŸ ืึท COM ื›ื™ื™ืคืขืฅ, ืื™ืจ ื“ืึทืจืคึฟืŸ ืฆื• ืฉื˜ืขืœืŸ ื“ืขื -ComObject ืคึผืึทืจืึทืžืขื˜ืขืจ ืžื™ื˜ ื“ื™ ืคึผืจืึธื•ื’ืจื™ื“ ืคึผืจืึธื•ื’ืจื™ื“ ืคื•ืŸ ื“ื™ ื’ืขื‘ืขื˜ืŸ ืงืœืึทืก:

New-Object -ComObject WScript.Shell
New-Object -ComObject WScript.Network
New-Object -ComObject Scripting.Dictionary
New-Object -ComObject Scripting.FileSystemObject

ืฆื• ืฉืึทืคึฟืŸ ื“ื™ื™ืŸ ืื™ื™ื’ืขื ืข ืึทื‘ื“ื–ืฉืขืงืฅ ืžื™ื˜ ืึท ืึทืจื‘ื™ื˜ืจืึทืจื™ืฉ ืกื˜ืจื•ืงื˜ื•ืจ, ื“ื™ ื ื•ืฆืŸ ืคื•ืŸ New-Object ืื™ื– ืฆื• ืึทืจื˜ืฉืึทื™ืง ืื•ืŸ ืงืึทืžื‘ืขืจืกืึทื; ื“ืขื ืงืžื“ืœืขื˜ ืื™ื– ื’ืขื ื™ืฆื˜ ืฆื• ืึทืจื‘ืขื˜ืŸ ืžื™ื˜ ื•ื•ื™ื™ื›ื•ื•ืืจื’ ืงืึทืžืคึผืึธื•ื ืึทื ืฅ ืคื•ื ื“ืจื•ื™ืกื ื“ื™ืง ืฆื• PowerShell. ืื™ืŸ ืฆื•ืงื•ื ืคึฟื˜ ืึทืจื˜ื™ืงืœืขืŸ ื“ืขื ืึทืจื•ื™ืกื’ืขื‘ืŸ ื•ื•ืขื˜ ื–ื™ื™ืŸ ื“ื™ืกืงืึทืกื˜ ืื™ืŸ ืžืขืจ ื“ืขื˜ืึทืœ. ืื™ืŸ ืึทื“ื™ืฉืึทืŸ ืฆื• .ื ืขื˜ ืื•ืŸ ืงืึทื ืึทื‘ื“ื–ืฉืขืงืฅ, ืžื™ืจ ื•ื•ืขืœืŸ ืื•ื™ืš ื•ื™ืกืคืึธืจืฉืŸ CIM (WMI) ืื•ืŸ ADSI ืึทื‘ื“ื–ืฉืขืงืฅ.

ืคืึทืš ืกื˜ืึทื˜ื™ืง ืžืขื˜ื”ืึธื“ืก

ืขื˜ืœืขื›ืข. ื ืขืฅ ืงืึธืจ ืงืœืืกืŸ ืงืขื ืขืŸ ื ื™ื˜ ื–ื™ื™ืŸ ื™ื ืกื˜ืึทื ื˜ื™ื™ื™ื˜ื™ื“, ืึทืจื™ื™ึทื ื’ืขืจืขื›ื ื˜ System.Environment ืื•ืŸ System.Math. ื–ื™ื™ ื–ืขื ืขืŸ ืกื˜ืึทื˜ื™ืง ืื•ืŸ ืึทื ื˜ื”ืึทืœื˜ืŸ ื‘ืœื•ื™ื– ืกื˜ืึทื˜ื™ืง ืคึผืจืึธืคึผืขืจื˜ื™ืขืก ืื•ืŸ ืžืขื˜ื”ืึธื“ืก. ื“ืืก ื–ืขื ืขืŸ ื‘ื™ื™ืกื™ืงืœื™ ืจืขืคึฟืขืจืขื ืฅ ืœื™ื™ื‘ืจืขืจื™ื– ื•ื•ืึธืก ื–ืขื ืขืŸ ื’ืขื ื™ืฆื˜ ืึธืŸ ืงืจื™ื™ื™ื˜ื™ื ื’ ืึทื‘ื“ื–ืฉืขืงืฅ. ืื™ืจ ืงืขื ืขืŸ ืึธืคึผืฉื™ืงืŸ ืฆื• ืึท ืกื˜ืึทื˜ื™ืง ืงืœืึทืก ื“ื•ืจืš ืึท ืœื™ื˜ืขืจืึทืœ ื“ื•ืจืš ืขื ืงืœืึธื•ื–ื™ื ื’ ื“ื™ ื˜ื™ืคึผ ื ืึธืžืขืŸ ืื™ืŸ ืงื•ื•ืึทื“ืจืึทื˜ ื‘ืจืึทืงืึทืฅ. ืึธื‘ืขืจ, ืื•ื™ื‘ ืžื™ืจ ืงื•ืงืŸ ืื™ืŸ ื“ื™ ืกื˜ืจื•ืงื˜ื•ืจ ืคื•ืŸ ื“ื™ ื›ื™ื™ืคืขืฅ ื ื™ืฆืŸ Get-Member, ืžื™ืจ ื•ื•ืขืœืŸ ื–ืขืŸ ื“ืขื ื˜ื™ืคึผ System.RuntimeType ืึทื ืฉื˜ืึธื˜ ืคื•ืŸ System.Environment:

[System.Environment] | Get-Member

ื•ื•ืึธืก ืื™ื– Windows PowerShell ืื•ืŸ ื•ื•ืึธืก ืื™ื– ืขืก ื’ืขื ื™ืฆื˜ ืคึฟืึทืจ? ื˜ื™ื™ืœ 4: ืืจื‘ืขื˜ืŸ ืžื™ื˜ ืึทื‘ื“ื–ืฉืขืงืฅ, ืื™ื™ื’ืขื ืข ืงืœืืกืŸ

ืฆื• ื–ืขืŸ ื‘ืœื•ื™ื– ืกื˜ืึทื˜ื™ืง ืžื™ื˜ื’ืœื™ื“ืขืจ, ืจื•ืคืŸ Get-Member ืžื™ื˜ ื“ื™ -ืกื˜ืึทื˜ื™ืง ืคึผืึทืจืึทืžืขื˜ืขืจ (ื˜ืึธืŸ ื“ื™ ื›ื™ื™ืคืขืฅ ื˜ื™ืคึผ):

[System.Environment] | Get-Member -Static

ื•ื•ืึธืก ืื™ื– Windows PowerShell ืื•ืŸ ื•ื•ืึธืก ืื™ื– ืขืก ื’ืขื ื™ืฆื˜ ืคึฟืึทืจ? ื˜ื™ื™ืœ 4: ืืจื‘ืขื˜ืŸ ืžื™ื˜ ืึทื‘ื“ื–ืฉืขืงืฅ, ืื™ื™ื’ืขื ืข ืงืœืืกืŸ

ืฆื• ืึทืงืกืขืก ืกื˜ืึทื˜ื™ืง ืคึผืจืึธืคึผืขืจื˜ื™ืขืก ืื•ืŸ ืžืขื˜ื”ืึธื“ืก, ื ื•ืฆืŸ ืฆื•ื•ื™ื™ ืงืึธื ืกืขืงื•ื˜ื™ื•ื•ืข ืงืึธืœืึธื ืก ืึทื ืฉื˜ืึธื˜ ืคื•ืŸ ืึท ืคึผืขืจื™ืึธื“ ื ืึธืš ื“ื™ ืœื™ื˜ืขืจืึทืœ:

[System.Environment]::OSVersion

ืึธื“ืขืจ

$test=[System.Math]::Sqrt(25) 
$test
$test.GetType()

ื•ื•ืึธืก ืื™ื– Windows PowerShell ืื•ืŸ ื•ื•ืึธืก ืื™ื– ืขืก ื’ืขื ื™ืฆื˜ ืคึฟืึทืจ? ื˜ื™ื™ืœ 4: ืืจื‘ืขื˜ืŸ ืžื™ื˜ ืึทื‘ื“ื–ืฉืขืงืฅ, ืื™ื™ื’ืขื ืข ืงืœืืกืŸ

ื˜ื™ืคึผ PSCustomObject

ืฆื•ื•ื™ืฉืŸ ื“ื™ ืคื™ืœืข ื“ืึทื˜ืŸ ื˜ื™ื™ืคึผืก ื‘ื ื™ืžืฆื ืื™ืŸ PowerShell, ืขืก ืื™ื– ื•ื•ืขืจื˜ ื“ืขืจืžืึธื ืขืŸ PSCustomObject, ื“ื™ื–ื™ื™ื ื“ ืคึฟืึทืจ ืกื˜ืึธืจื™ื ื’ ืึทื‘ื“ื–ืฉืขืงืฅ ืžื™ื˜ ืึท ืึทืจื‘ื™ื˜ืจืึทืจื™ืฉ ืกื˜ืจื•ืงื˜ื•ืจ. ืฉืึทืคึฟืŸ ืึทื–ืึท ืึท ื›ื™ื™ืคืขืฅ ื ื™ืฆืŸ ื“ื™ New-Object cmdlet ืื™ื– ื’ืขื”ืืœื˜ืŸ ืึท ืงืœืึทืกื™ืฉ, ืึธื‘ืขืจ ืงืึทืžื‘ืขืจืกืึทื ืื•ืŸ ืึทื•ื˜ื“ื™ื™ื˜ื™ื“ ื•ื•ืขื’:

$object = New-Object  โ€“TypeName PSCustomObject -Property @{Name = 'Ivan Danko'; 
                                          City = 'Moscow';
                                          Country = 'Russia'}

ื–ืืœ ืก ืงื•ืง ืื™ืŸ ื“ื™ ืกื˜ืจื•ืงื˜ื•ืจ ืคื•ืŸ ื“ื™ ื›ื™ื™ืคืขืฅ:

$object | Get-Member

ื•ื•ืึธืก ืื™ื– Windows PowerShell ืื•ืŸ ื•ื•ืึธืก ืื™ื– ืขืก ื’ืขื ื™ืฆื˜ ืคึฟืึทืจ? ื˜ื™ื™ืœ 4: ืืจื‘ืขื˜ืŸ ืžื™ื˜ ืึทื‘ื“ื–ืฉืขืงืฅ, ืื™ื™ื’ืขื ืข ืงืœืืกืŸ

ืกื˜ืึทืจื˜ื™ื ื’ ืžื™ื˜ PowerShell 3.0, ืืŸ ืื ื“ืขืจ ืกื™ื ื˜ืึทืงืก ืื™ื– ื‘ื ื™ืžืฆื:

$object = [PSCustomObject]@{Name = 'Ivan Danko'; 
                                          City = 'Moscow';
                                          Country = 'Russia'
}

ืื™ืจ ืงืขื ืขืŸ ืึทืงืกืขืก ื“ื™ ื“ืึทื˜ืŸ ืื™ืŸ ืื™ื™ื ืขืจ ืคื•ืŸ ื“ื™ ืขืงื•ื•ื™ื•ื•ืึทืœืขื ื˜ ื•ื•ืขื’ืŸ:

$object.Name

$object.'Name'

$value = 'Name'
$object.$value

ื“ืึธ ืก ืึท ื‘ื™ื™ืฉืคึผื™ืœ ืคื•ืŸ ืงืึทื ื•ื•ืขืจื˜ื™ื ื’ ืึท ื™ื’ื–ื™ืกื˜ื™ื ื’ ื›ืึทืฉื˜ืึทื‘ืœืข ืฆื• ืึท ื›ื™ื™ืคืขืฅ:

$hash = @{'Name'='Ivan Danko'; 'City'='Moscow'; 'Country'='Russia'}
$hash.GetType()
$object = [pscustomobject]$hash
$object.GetType()

ื•ื•ืึธืก ืื™ื– Windows PowerShell ืื•ืŸ ื•ื•ืึธืก ืื™ื– ืขืก ื’ืขื ื™ืฆื˜ ืคึฟืึทืจ? ื˜ื™ื™ืœ 4: ืืจื‘ืขื˜ืŸ ืžื™ื˜ ืึทื‘ื“ื–ืฉืขืงืฅ, ืื™ื™ื’ืขื ืข ืงืœืืกืŸ

ืื™ื™ื ืขืจ ืคื•ืŸ ื“ื™ ื“ื™ืกืึทื“ื•ื•ืึทื ื˜ื™ื“ื–ืฉื™ื– ืคื•ืŸ ืึทื‘ื“ื–ืฉืขืงืฅ ืคื•ืŸ ื“ืขื ื˜ื™ืคึผ ืื™ื– ืึทื– ื“ื™ ืกื“ืจ ืคื•ืŸ ื–ื™ื™ืขืจ ืคึผืจืึธืคึผืขืจื˜ื™ืขืก ืงืขื ืขืŸ ื˜ื•ื™ืฉืŸ. ืฆื• ื•ื™ืกืžื™ื™ื“ืŸ ื“ืขื, ืื™ืจ ืžื•ื–ืŸ ื ื•ืฆืŸ ื“ื™ [ืึธืจื“ืขืจื“] ืึทื˜ืจื™ื‘ื™ื•ื˜:

$object = [PSCustomObject][ordered]@{Name = 'Ivan Danko'; 
                                          City = 'Moscow';
                                          Country = 'Russia'
}

ืขืก ื–ืขื ืขืŸ ืื ื“ืขืจืข ืึธืคึผืฆื™ืขืก ืคึฟืึทืจ ืงืจื™ื™ื™ื˜ื™ื ื’ ืึท ื›ื™ื™ืคืขืฅ: ืื•ื™ื‘ืŸ ืžื™ืจ ื’ืขืงื•ืงื˜ ืื•ื™ืฃ ื ื™ืฆืŸ ื“ื™ ืงืžื“ืœืขื˜ ืกืขืœืขืงื˜-ื›ื™ื™ืคืขืฅ. ืึทืœืข ื•ื•ืึธืก ื‘ืœื™ื™ื‘ื˜ ืื™ื– ืฆื• ืจืขื›ืขื ืขืŸ ืื•ื™ืก ืึทื“ื™ื ื’ ืื•ืŸ ืจื™ืžื•ื•ื•ื™ื ื’ ืขืœืขืžืขื ื˜ืŸ. ื˜ืืŸ ื“ืขื ืคึฟืึทืจ ื“ื™ ื›ื™ื™ืคืขืฅ ืคื•ืŸ ื“ื™ ืคืจื™ืขืจื“ื™ืงืข ื‘ื™ื™ึทืฉืคึผื™ืœ ืื™ื– ื’ืึทื ืฅ ืคึผืฉื•ื˜:

$object | Add-Member โ€“MemberType NoteProperty โ€“Name Age  โ€“Value 33
$object | Get-Member

ื•ื•ืึธืก ืื™ื– Windows PowerShell ืื•ืŸ ื•ื•ืึธืก ืื™ื– ืขืก ื’ืขื ื™ืฆื˜ ืคึฟืึทืจ? ื˜ื™ื™ืœ 4: ืืจื‘ืขื˜ืŸ ืžื™ื˜ ืึทื‘ื“ื–ืฉืขืงืฅ, ืื™ื™ื’ืขื ืข ืงืœืืกืŸ

ื“ืขืจ Add-Member cmdlet ืึทืœืึทื•ื– ืื™ืจ ืฆื• ืœื™ื™ื’ืŸ ื ื™ื˜ ื‘ืœื•ื™ื– ืคึผืจืึธืคึผืขืจื˜ื™ืขืก, ืึธื‘ืขืจ ืื•ื™ืš ืžืขื˜ื”ืึธื“ืก ืฆื• ืึท ืคืจื™ืขืจ ื‘ืืฉืืคืŸ $ืึธื‘ื“ื–ืฉืขืงื˜ ื“ื•ืจืš ื ื™ืฆืŸ ื“ื™ "-MemberType ScriptMethod" ื‘ื•ื™ืขืŸ:

$ScriptBlock = {
    # ะบะพะด 
}
$object | Add-Member -Name "MyMethod" -MemberType ScriptMethod -Value $ScriptBlock
$object | Get-Member

ื‘ื™ื˜ืข ื˜ืึธืŸ ืึทื– ืžื™ืจ ื’ืขื•ื•ื™ื™ื ื˜ ื“ื™ $ ScriptBlock ื‘ื™ื™ึทื˜ืขื•ื•ื“ื™ืง ืคื•ืŸ ื˜ื™ืคึผ ScriptBlock ืฆื• ืงืจืึธื ื“ื™ ืงืึธื“ ืคึฟืึทืจ ื“ื™ ื ื™ื™ึทืข ืื•ืคึฟืŸ.

ื•ื•ืึธืก ืื™ื– Windows PowerShell ืื•ืŸ ื•ื•ืึธืก ืื™ื– ืขืก ื’ืขื ื™ืฆื˜ ืคึฟืึทืจ? ื˜ื™ื™ืœ 4: ืืจื‘ืขื˜ืŸ ืžื™ื˜ ืึทื‘ื“ื–ืฉืขืงืฅ, ืื™ื™ื’ืขื ืข ืงืœืืกืŸ

ืฆื• ื‘ืึทื–ื™ื™ึทื˜ื™ืงืŸ ืคึผืจืึธืคึผืขืจื˜ื™ืขืก, ื ื•ืฆืŸ ื“ื™ ืงืึธืจืึทืกืคึผืึทื ื“ื™ื ื’ ืื•ืคึฟืŸ:

$object.psobject.properties.remove('Name')

ืฉืึทืคึฟืŸ ื“ื™ื™ืŸ ืื™ื™ื’ืขื ืข ืงืœืืกืŸ

PowerShell 5.0 ื™ื ื˜ืจืึธื•ื“ื•ืกื˜ ื“ื™ ืคื™ื™ื™ืงื™ื™ื˜ ืฆื• ื“ืขืคื™ื ื™ืจืŸ ืงืœืืกืŸ ื ื™ืฆืŸ ืกื™ื ื˜ืึทืงืก ื›ืึทืจืึทืงื˜ืขืจื™ืกื˜ื™ืฉ ืคื•ืŸ ื›ื™ื™ืคืขืฅ-ืึธืจื™ืขื ื˜ื™ื“ ืคึผืจืึธื’ืจืึทืžืžื™ื ื’ ืฉืคึผืจืึทื›ืŸ. ื“ืขืจ ื“ื™ื ืกื˜ ื•ื•ืึธืจื˜ ืงืœืึทืก ืื™ื– ื‘ื“ืขื” ืคึฟืึทืจ ื“ืขื, ื ืึธืš ื•ื•ืึธืก ืื™ืจ ื–ืึธืœ ืกืคึผืขืฆื™ืคื™ืฆื™ืจืŸ ื“ื™ ื ืึธืžืขืŸ ืคื•ืŸ ื“ื™ ืงืœืึทืก ืื•ืŸ ื‘ืึทืฉืจื™ื™ึทื‘ืŸ ื–ื™ื™ึทืŸ ื’ื•ืฃ ืื™ืŸ ืึธืคึผืขืจืึทื˜ืึธืจ ื‘ืจืึทืงืึทืฅ:

class MyClass
{
    # ั‚ะตะปะพ ะบะปะฐััะฐ
}

ื“ืึธืก ืื™ื– ืึทืŸ ืืžืช. ื ืขืฅ ืงืึธืจ ื˜ื™ืคึผ, ืžื™ื˜ ืึท ื’ื•ืฃ ื•ื•ืึธืก ื‘ืืฉืจื™ื™ื‘ื˜ ื–ื™ื™ึทืŸ ืคึผืจืึธืคึผืขืจื˜ื™ืขืก, ืžืขื˜ื”ืึธื“ืก ืื•ืŸ ืื ื“ืขืจืข ืขืœืขืžืขื ื˜ืŸ. ื–ืืœ ืก ืงื•ืง ืื™ืŸ ืึท ื‘ื™ื™ืฉืคึผื™ืœ ืคื•ืŸ ื“ื™ืคื™ื™ื ื™ื ื’ ื“ื™ ืกื™ืžืคึผืœืึทืกื˜ ืงืœืึทืก:

class MyClass 
{
     [string]$Name
     [string]$City
     [string]$Country
}

ืฆื• ืฉืึทืคึฟืŸ ืึท ื›ื™ื™ืคืขืฅ (ืงืœืึทืก ื‘ื™ื™ึทืฉืคึผื™ืœ), ื ื•ืฆืŸ ื“ื™ ืงืžื“ืœืขื˜ ื ื™ื•-ืึธื‘ื“ื–ืฉืขืงื˜, ืึธื“ืขืจ ืึท ืœื™ื˜ืขืจืึทืœ ืคื•ืŸ ื˜ื™ืคึผ [MyClass] ืื•ืŸ ืคึผืกืขื•ื•ื“ืึธืกื˜ืึทื˜ื™ืง ืื•ืคึฟืŸ ื ื™ื™ึท (ืคืขืœื™ืงื™ื™ึทื˜ ืงืึทื ืกื˜ืจืึทืงื˜ืขืจ):

$object = New-Object -TypeName MyClass

ืึธื“ืขืจ

$object = [MyClass]::new()

ืœืึธืžื™ืจ ืึทื ืึทืœื™ื™ื– ื“ื™ ืกื˜ืจื•ืงื˜ื•ืจ ืคื•ืŸ ื“ื™ ื›ื™ื™ืคืขืฅ:

$object | Get-Member

ื•ื•ืึธืก ืื™ื– Windows PowerShell ืื•ืŸ ื•ื•ืึธืก ืื™ื– ืขืก ื’ืขื ื™ืฆื˜ ืคึฟืึทืจ? ื˜ื™ื™ืœ 4: ืืจื‘ืขื˜ืŸ ืžื™ื˜ ืึทื‘ื“ื–ืฉืขืงืฅ, ืื™ื™ื’ืขื ืข ืงืœืืกืŸ

ื“ื• ื–ืืœืกื˜ ื ื™ืฉื˜ ืคืึทืจื’ืขืกืŸ ื•ื•ืขื’ืŸ ืคืึทืจื ืขื: ืื™ืจ ืงืขื ืขืŸ ื ื™ืฉื˜ ืึธืคึผืฉื™ืงืŸ ืฆื• ืึท ื˜ื™ืคึผ ื ืึธืžืขืŸ ื•ื•ื™ ืึท ืฉื˜ืจื™ืงืœ ืึธื“ืขืจ ื ื•ืฆืŸ ืึท ืœื™ื˜ืขืจืึทืœ ื˜ื™ืคึผ ืึทืจื•ื™ืก ื“ื™ ืฉืจื™ืคื˜ ืึธื“ืขืจ ืžืึธื“ื•ืœืข ืื™ืŸ ื•ื•ืึธืก ื“ื™ ืงืœืึทืก ืื™ื– ื“ื™ืคื™ื™ื ื“. ืื™ืŸ ื“ืขื ืคืึทืœ, ืคืึทื ื’ืงืฉืึทื ื– ืงืขื ืขืŸ ืฆื•ืจื™ืงืงื•ืžืขืŸ ืงืœืึทืก ื™ื ืกื˜ืึทื ืกื™ื– (ืึทื‘ื“ื–ืฉืขืงืฅ) ื•ื•ืึธืก ื•ื•ืขื˜ ื–ื™ื™ืŸ ืฆื•ื˜ืจื™ื˜ืœืขืš ืึทืจื•ื™ืก ื“ื™ ืžืึธื“ื•ืœืข ืึธื“ืขืจ ืฉืจื™ืคื˜.

ื ืึธืš ืงืจื™ื™ื™ื˜ื™ื ื’ ื“ื™ ื›ื™ื™ืคืขืฅ, ืคึผืœืึธืžื‘ื™ืจืŸ ืื™ืŸ ื–ื™ื™ึทืŸ ืคึผืจืึธืคึผืขืจื˜ื™ืขืก:

$object.Name = 'Ivan Danko'
$object.City = 'Moscow'
$object.Country = 'Russia'
$object

ื•ื•ืึธืก ืื™ื– Windows PowerShell ืื•ืŸ ื•ื•ืึธืก ืื™ื– ืขืก ื’ืขื ื™ืฆื˜ ืคึฟืึทืจ? ื˜ื™ื™ืœ 4: ืืจื‘ืขื˜ืŸ ืžื™ื˜ ืึทื‘ื“ื–ืฉืขืงืฅ, ืื™ื™ื’ืขื ืข ืงืœืืกืŸ

ื‘ืึทืžืขืจืงื•ื ื’ ืึทื– ื“ื™ ืงืœืึทืก ื‘ืึทืฉืจื™ื™ึทื‘ื•ื ื’ ืกืคึผืขืฆื™ืคื™ืฆื™ืจื˜ ื ื™ื˜ ื‘ืœื•ื™ื– ื“ื™ ืคืึทืจืžืึธื’ ื˜ื™ื™ืคึผืก, ืึธื‘ืขืจ ืื•ื™ืš ื–ื™ื™ืขืจ ืคืขืœื™ืงื™ื™ึทื˜ ื•ื•ืึทืœื•ืขืก:

class Example
{
     [string]$Name = 'John Doe'
}

ื“ื™ ื‘ืึทืฉืจื™ื™ึทื‘ื•ื ื’ ืคื•ืŸ ืึท ืงืœืึทืก ืื•ืคึฟืŸ ืจื™ื–ืขืžื‘ืึทืœื– ื“ื™ ื‘ืึทืฉืจื™ื™ึทื‘ื•ื ื’ ืคื•ืŸ ืึท ืคึฟื•ื ืงืฆื™ืข, ืึธื‘ืขืจ ืึธืŸ ื ื™ืฆืŸ ื“ื™ ืคึฟื•ื ืงืฆื™ืข ื•ื•ืึธืจื˜. ื•ื•ื™ ืื™ืŸ ืึท ืคึฟื•ื ืงืฆื™ืข, ืคึผืึทืจืึทืžืขื˜ืขืจืก ื–ืขื ืขืŸ ื“ื•ืจื›ื’ืขื’ืื ื’ืขืŸ ืฆื• ืžืขื˜ื”ืึธื“ืก ืื•ื™ื‘ ื ื™ื™ื˜ื™ืง:

class MyClass 
{
     [string]$Name
     [string]$City
     [string]$Country
     
     #ะพะฟะธัะฐะฝะธะต ะผะตั‚ะพะดะฐ
     Smile([bool]$param1)
     {
         If($param1) {
            Write-Host ':)'
         }
     }
}

ืื™ืฆื˜ ื“ืขืจ ืคืืจืฉื˜ื™ื™ืขืจ ืคื•ืŸ ืื•ื ื“ื–ืขืจ ืงืœืึทืก ืงืขื ืขืŸ ืฉืžื™ื™ื›ืœืขืŸ:

$object = [MyClass]::new()
$object.Smile($true)

ืžืขื˜ื”ืึธื“ืก ืงืขื ืขืŸ ื–ื™ื™ืŸ ืึธื•ื•ื•ืขืจืœืึธื•ื“ื™ื“; ืื™ืŸ ื“ืขืจืฆื•, ืึท ืงืœืึทืก ื”ืื˜ ืกื˜ืึทื˜ื™ืง ืคึผืจืึธืคึผืขืจื˜ื™ืขืก ืื•ืŸ ืžืขื˜ื”ืึธื“ืก, ื•ื•ื™ ืื•ื™ืš ืงืึทื ืกื˜ืจืึทืงื˜ืขืจื– ื•ื•ืขืžืขื ืก ื ืขืžืขืŸ ืฆื•ื ื•ื™ืคืคืึทืœืŸ ืžื™ื˜ ื“ื™ ื ืึธืžืขืŸ ืคื•ืŸ ื“ื™ ืงืœืึทืก ื–ื™ืš. ื ืงืœืึทืก ื“ื™ืคื™ื™ื ื“ ืื™ืŸ ืึท ืฉืจื™ืคื˜ ืึธื“ืขืจ PowerShell ืžืึธื“ื•ืœืข ืงืขื ืขืŸ ื“ื™ื ืขืŸ ื•ื•ื™ ืึท ื‘ืึทื–ืข ืคึฟืึทืจ ืื ื“ืขืจืŸ - ื“ืึธืก ืื™ื– ื•ื•ื™ ื™ืจื•ืฉื” ืื™ื– ื™ืžืคึผืœืึทืžืขื ืึทื“. ืื™ืŸ ื“ืขื ืคืึทืœ, ืขืก ืื™ื– ืขืจืœื•ื™ื‘ื˜ ืฆื• ื ื•ืฆืŸ ื™ื’ื–ื™ืกื˜ื™ื ื’ .ื ืขื˜ ืงืœืืกืŸ ื•ื•ื™ ื‘ืึทื–ืข ืึธื ืขืก:

class MyClass2 : MyClass
{
      #ั‚ะตะปะพ ะฝะพะฒะพะณะพ ะบะปะฐััะฐ, ะฑะฐะทะพะฒั‹ะผ ะดะปั ะบะพั‚ะพั€ะพะณะพ ัะฒะปัะตั‚ัั MyClass
}
[MyClass2]::new().Smile($true)

ืื•ื ื“ื–ืขืจ ื‘ืึทืฉืจื™ื™ึทื‘ื•ื ื’ ืคื•ืŸ ืืจื‘ืขื˜ืŸ ืžื™ื˜ ืึทื‘ื“ื–ืฉืขืงืฅ ืื™ืŸ PowerShell ืื™ื– ืงื•ื™ื ื™ื’ื–ืึธืกื˜ื™ื•ื•. ืื™ืŸ ื“ื™ ืคืืœื’ืขื ื“ืข ืื•ื™ืกื’ืื‘ืขืก, ืžื™ืจ ื•ื•ืขืœืŸ ืคึผืจื•ื‘ื™ืจืŸ ืฆื• ื“ื™ืคึผืึทืŸ ืขืก ืžื™ื˜ ืคึผืจืึทืงื˜ื™ืฉ ื‘ื™ื™ืฉืคื™ืœืŸ: ื“ืขืจ ืคื™ื ืคื˜ ืึทืจื˜ื™ืงืœ ืื™ืŸ ื“ืขืจ ืกืขืจื™ืข ื•ื•ืขื˜ ื–ื™ื™ืŸ ื“ืขื“ืึทืงื™ื™ื˜ืึทื“ ืฆื• ื“ื™ ื™ืฉื•ื– ืคื•ืŸ ื™ื ื˜ืึทื’ืจื™ื™ื˜ื™ื ื’ PowerShell ืžื™ื˜ ื“ืจื™ื˜-ืคึผืึทืจื˜ื™ื™ ื•ื•ื™ื™ื›ื•ื•ืืจื’ ืงืึทืžืคึผืึธื•ื ืึทื ืฅ. ืคืึทืจื’ืึทื ื’ืขื ื”ื™ื™ื˜ ืคึผืึทืจืฅ ืงืขื ืขืŸ ื–ื™ื™ืŸ ื’ืขืคึฟื•ื ืขืŸ ืื™ืŸ ื“ื™ ืœื™ื ืงืก ืื•ื ื˜ืŸ.

ื˜ื™ื™ืœ 1: ื™ืงืขืจื“ื™ืง Windows PowerShell ืคึฟืขื™ึดืงื™ื™ื˜ืŸ
ื˜ื™ื™ืœ 2: ื”ืงื“ืžื” ืฆื• ื“ื™ Windows PowerShell ืคึผืจืึธื’ืจืึทืžืžื™ื ื’ ืฉืคึผืจืึทืš
ื˜ื™ื™ืœ 3: ืคืึธืจืŸ ืคึผืึทืจืึทืžืขื˜ืขืจืก ืฆื• ืกืงืจื™ืคึผืก ืื•ืŸ ืคืึทื ื’ืงืฉืึทื ื–, ืงืจื™ื™ื™ื˜ื™ื ื’ ืงืžื“ืœืขืฅ

ื•ื•ืึธืก ืื™ื– Windows PowerShell ืื•ืŸ ื•ื•ืึธืก ืื™ื– ืขืก ื’ืขื ื™ืฆื˜ ืคึฟืึทืจ? ื˜ื™ื™ืœ 4: ืืจื‘ืขื˜ืŸ ืžื™ื˜ ืึทื‘ื“ื–ืฉืขืงืฅ, ืื™ื™ื’ืขื ืข ืงืœืืกืŸ

ืžืงื•ืจ: www.habr.com

ืœื™ื™ื’ืŸ ืึท ื‘ืึทืžืขืจืงื•ื ื’