PowerShell бағдарламасымен жұмыс істегенде, біз бірінші кезекте пәрмендер (Cmdlets) кездестіреміз.
Пәрмен шақыруы келесідей көрінеді:
Verb-Noun -Parameter1 ValueType1 -Parameter2 ValueType2[]
көмек
Анықтамаға PowerShell бағдарламасында Get-Help пәрмені арқылы қол жеткізіледі. Параметрлердің бірін көрсетуге болады: мысал, егжей-тегжейлі, толық, онлайн, showWindow.
Get-Help Get-Service -full Get-Service пәрменінің жұмысының толық сипаттамасын береді.
Get-Help Get-S* Get-S* арқылы басталатын барлық қол жетімді пәрмендер мен функцияларды көрсетеді.
Сондай-ақ Microsoft корпорациясының ресми сайтында егжей-тегжейлі құжаттама бар.
Мұнда Get-Evenlog пәрмені үшін мысал анықтамасы берілген
Параметрлер шаршы жақшаға [] алынса, олар міндетті емес.
Яғни, бұл мысалда журнал атауының өзі міндетті, ал параметр атауы
EntryType параметрін қарасаңыз, бұйра жақшаға алынған мәндерді көре аласыз. Бұл параметр үшін біз тек қана бұйра жақшаларда алдын ала анықталған мәндерді пайдалана аламыз.
Параметрдің қажет екендігі туралы ақпаратты Міндетті өрістегі төмендегі сипаттамадан көре аламыз. Жоғарыдағы мысалда Кейін төлсипаты міндетті емес, себебі Міндетті жалған мәніне орнатылған. Әрі қарай біз «Аты» деп жазылған «Орын» өрісін көреміз. Бұл параметрге тек аты бойынша қол жеткізуге болатынын білдіреді, яғни:
Get-EventLog -LogName Application -After 2020.04.26
LogName параметрінде Named параметрінің орнына 0 саны көрсетілгендіктен, бұл параметрге атаусыз, бірақ оны қажетті ретпен көрсету арқылы қол жеткізе алатынымызды білдіреді:
Get-EventLog Application -After 2020.04.26
Мына тәртіпті делік:
Get-EventLog -Newest 5 Application
ат
Консольдегі таныс пәрмендерді пайдалануымыз үшін PowerShell-де бүркеншік аттар (бүркеншік ат) бар.
Орналасу орны пәрменіне арналған бүркеншік аттың мысалы cd болып табылады.
Яғни, пәрменді шақырудың орнына
Set-Location “D:”
пайдалана аламыз
cd “D:”
Тарих
Пәрмен шақыруларының тарихын көру үшін Get-History қолданбасын пайдалануға болады
Тарихтан команданы орындау Invoke-History 1; Шақыру-тарих 2
Тарихты тазалау Clear-Тарих
Құбыр
Powershell ішіндегі конвейер бірінші функцияның нәтижесі екіншісіне берілген кезде. Мұнда құбырды пайдаланудың мысалы келтірілген:
Get-Verb | Measure-Object
Бірақ құбырды жақсырақ түсіну үшін қарапайым мысалды алайық. Команда бар
Get-Verb "get"
Егер Get-Help Get-Verb -Full help деп атасақ, Verb параметрі контурлық енгізуді қабылдайтынын және ByValue жақша ішінде жазылғанын көреміз.
Бұл Get-Verb «get» сөзін «алу» | Алу-етістік.
Яғни, бірінші өрнектің нәтижесі жол болып табылады және ол мән бойынша контурлық енгізу арқылы Get-Verb командасының Етістік параметріне беріледі.
Сондай-ақ, құбыр жолының кірісі ByPropertyName болуы мүмкін. Бұл жағдайда Етістік атауына ұқсас қасиеті бар нысанды өткіземіз.
Айнымалылар
Айнымалылар қатты терілмейді және алдында $ белгісімен көрсетіледі
$example = 4
> белгісі деректерді енгізуді білдіреді
Мысалы, $example > File.txt
Бұл өрнекпен біз $example айнымалысының деректерін файлға орналастырамыз
Set-Content -Value $example -Path File.txt сияқты
Массивтер
Массив инициализациясы:
$ArrayExample = @(“First”, “Second”)
Бос массивті инициализациялау:
$ArrayExample = @()
Индекс бойынша мәнді алу:
$ArrayExample[0]
Бүкіл массивді алыңыз:
$ArrayExample
Элемент қосу:
$ArrayExample += “Third”
$ArrayExample += @(“Fourth”, “Fifth”)
Сұрыптау:
$ArrayExample | Sort
$ArrayExample | Sort -Descending
Бірақ бұл сұрыптау кезінде массивтің өзі өзгеріссіз қалады. Ал егер массивте деректердің сұрыпталғанын қаласақ, онда сұрыпталған мәндерді тағайындау керек:
$ArrayExample = $ArrayExample | Sort
PowerShell ішіндегі массивтен элементті жоюдың нақты жолы жоқ, бірақ оны келесі жолмен орындауға болады:
$ArrayExample = $ArrayExample | where { $_ -ne “First” }
$ArrayExample = $ArrayExample | where { $_ -ne $ArrayExample[0] }
Массивті жою:
$ArrayExample = $null
Циклдар
Цикл синтаксисі:
for($i = 0; $i -lt 5; $i++){}
$i = 0
while($i -lt 5){}
$i = 0
do{} while($i -lt 5)
$i = 0
do{} until($i -lt 5)
ForEach($item in $items){}
Үзіліс циклінен шығыңыз.
Жалғастыру элементін өткізіп жіберу.
Шартты мәлімдемелер
if () {} elseif () {} else
switch($someIntValue){
1 { “Option 1” }
2 { “Option 2” }
default { “Not set” }
}
функция
Функция анықтамасы:
function Example () {
echo &args
}
Іске қосу функциясы:
Example “First argument” “Second argument”
Функциядағы аргументтерді анықтау:
function Example () {
param($first, $second)
}
function Example ($first, $second) {}
Іске қосу функциясы:
Example -first “First argument” -second “Second argument”
Ерекшелігі
try{
} catch [System.Net.WebException],[System.IO.IOException]{
} catch {
} finally{
}
Ақпарат көзі: www.habr.com