PowerShell ਨਾਲ ਕੰਮ ਕਰਦੇ ਸਮੇਂ, ਸਭ ਤੋਂ ਪਹਿਲਾਂ ਜਿਸ ਚੀਜ਼ ਦਾ ਅਸੀਂ ਸਾਹਮਣਾ ਕਰਦੇ ਹਾਂ ਉਹ ਹੈ ਕਮਾਂਡਾਂ (Cmdlets)।
ਕਮਾਂਡ ਕਾਲ ਇਸ ਤਰ੍ਹਾਂ ਦਿਖਾਈ ਦਿੰਦੀ ਹੈ:
Verb-Noun -Parameter1 ValueType1 -Parameter2 ValueType2[]
ਮਦਦ ਕਰੋ
Get-Help ਕਮਾਂਡ ਦੀ ਵਰਤੋਂ ਕਰਕੇ PowerShell ਵਿੱਚ ਮਦਦ ਤੱਕ ਪਹੁੰਚ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਤੁਸੀਂ ਪੈਰਾਮੀਟਰਾਂ ਵਿੱਚੋਂ ਇੱਕ ਨਿਰਧਾਰਤ ਕਰ ਸਕਦੇ ਹੋ: ਉਦਾਹਰਨ, ਵਿਸਤ੍ਰਿਤ, ਪੂਰਾ, ਔਨਲਾਈਨ, ਸ਼ੋਅ ਵਿੰਡੋ।
Get-Help Get-Service -full Get-Service ਕਮਾਂਡ ਕਿਵੇਂ ਕੰਮ ਕਰਦੀ ਹੈ ਇਸਦਾ ਪੂਰਾ ਵੇਰਵਾ ਵਾਪਸ ਕਰੇਗੀ
Get-Help Get-S* Get-S* ਨਾਲ ਸ਼ੁਰੂ ਹੋਣ ਵਾਲੀਆਂ ਸਾਰੀਆਂ ਉਪਲਬਧ ਕਮਾਂਡਾਂ ਅਤੇ ਫੰਕਸ਼ਨ ਦਿਖਾਏਗਾ
ਮਾਈਕ੍ਰੋਸਾਫਟ ਦੀ ਅਧਿਕਾਰਤ ਵੈੱਬਸਾਈਟ 'ਤੇ ਵਿਸਤ੍ਰਿਤ ਦਸਤਾਵੇਜ਼ ਵੀ ਹਨ।
Get-Evenlog ਕਮਾਂਡ ਲਈ ਇੱਥੇ ਇੱਕ ਉਦਾਹਰਨ ਮਦਦ ਹੈ
ਜੇਕਰ ਪੈਰਾਮੀਟਰ ਵਰਗ ਬਰੈਕਟ [] ਵਿੱਚ ਬੰਦ ਹਨ, ਤਾਂ ਉਹ ਵਿਕਲਪਿਕ ਹਨ।
ਭਾਵ, ਇਸ ਉਦਾਹਰਨ ਵਿੱਚ, ਜਰਨਲ ਦਾ ਨਾਮ ਲਾਜ਼ਮੀ ਹੈ, ਅਤੇ ਪੈਰਾਮੀਟਰ ਦਾ ਨਾਮ
ਜੇਕਰ ਤੁਸੀਂ EntryType ਪੈਰਾਮੀਟਰ ਨੂੰ ਦੇਖਦੇ ਹੋ, ਤਾਂ ਤੁਸੀਂ ਉਹਨਾਂ ਮੁੱਲਾਂ ਨੂੰ ਦੇਖ ਸਕਦੇ ਹੋ ਜੋ ਕਰਲੀ ਬਰੇਸ ਵਿੱਚ ਬੰਦ ਹਨ। ਇਸ ਪੈਰਾਮੀਟਰ ਲਈ, ਅਸੀਂ ਸਿਰਫ ਕਰਲੀ ਬਰੇਸ ਵਿੱਚ ਪਹਿਲਾਂ ਤੋਂ ਪਰਿਭਾਸ਼ਿਤ ਮੁੱਲਾਂ ਦੀ ਵਰਤੋਂ ਕਰ ਸਕਦੇ ਹਾਂ।
ਅਸੀਂ ਲੋੜੀਂਦੇ ਖੇਤਰ ਵਿੱਚ ਹੇਠਾਂ ਦਿੱਤੇ ਵਰਣਨ ਵਿੱਚ ਪੈਰਾਮੀਟਰ ਦੀ ਲੋੜ ਹੈ ਜਾਂ ਨਹੀਂ ਇਸ ਬਾਰੇ ਜਾਣਕਾਰੀ ਦੇਖ ਸਕਦੇ ਹਾਂ। ਉਪਰੋਕਤ ਉਦਾਹਰਨ ਵਿੱਚ, After ਗੁਣ ਵਿਕਲਪਿਕ ਹੈ ਕਿਉਂਕਿ ਲੋੜੀਂਦਾ ਨੂੰ ਗਲਤ 'ਤੇ ਸੈੱਟ ਕੀਤਾ ਗਿਆ ਹੈ। ਅੱਗੇ ਅਸੀਂ Position ਖੇਤਰ ਨੂੰ ਇਸਦੇ ਉਲਟ ਦੇਖਦੇ ਹਾਂ ਜੋ Named ਕਹਿੰਦਾ ਹੈ। ਇਸਦਾ ਮਤਲਬ ਹੈ ਕਿ ਪੈਰਾਮੀਟਰ ਨੂੰ ਸਿਰਫ ਨਾਮ ਦੁਆਰਾ ਐਕਸੈਸ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ, ਜੋ ਕਿ ਹੈ:
Get-EventLog -LogName Application -After 2020.04.26
ਕਿਉਂਕਿ LogName ਪੈਰਾਮੀਟਰ ਵਿੱਚ Named ਦੀ ਬਜਾਏ 0 ਨੰਬਰ ਦਿੱਤਾ ਗਿਆ ਸੀ, ਇਸਦਾ ਮਤਲਬ ਹੈ ਕਿ ਅਸੀਂ ਬਿਨਾਂ ਨਾਮ ਦੇ ਪੈਰਾਮੀਟਰ ਤੱਕ ਪਹੁੰਚ ਕਰ ਸਕਦੇ ਹਾਂ, ਪਰ ਇਸਨੂੰ ਲੋੜੀਂਦੇ ਕ੍ਰਮ ਵਿੱਚ ਨਿਸ਼ਚਿਤ ਕਰਕੇ:
Get-EventLog Application -After 2020.04.26
ਆਓ ਇਸ ਆਰਡਰ ਨੂੰ ਮੰਨੀਏ:
Get-EventLog -Newest 5 Application
ਉਪ
ਤਾਂ ਕਿ ਅਸੀਂ ਕੰਸੋਲ ਤੋਂ ਜਾਣੂ ਕਮਾਂਡਾਂ ਦੀ ਵਰਤੋਂ ਕਰ ਸਕੀਏ, ਪਾਵਰਸ਼ੇਲ ਕੋਲ ਉਪਨਾਮ (ਉਪਨਾਮ) ਹਨ।
ਸੈੱਟ-ਲੋਕੇਸ਼ਨ ਕਮਾਂਡ ਲਈ ਇੱਕ ਉਦਾਹਰਨ ਉਪਨਾਮ cd ਹੈ।
ਯਾਨੀ ਹੁਕਮ ਨੂੰ ਬੁਲਾਉਣ ਦੀ ਬਜਾਏ
Set-Location “D:”
ਅਸੀਂ ਵਰਤ ਸਕਦੇ ਹਾਂ
cd “D:”
ਇਤਿਹਾਸ
ਕਮਾਂਡ ਕਾਲਾਂ ਦਾ ਇਤਿਹਾਸ ਦੇਖਣ ਲਈ, ਤੁਸੀਂ Get-History ਦੀ ਵਰਤੋਂ ਕਰ ਸਕਦੇ ਹੋ
ਇਤਿਹਾਸ ਤੋਂ ਕਮਾਂਡ ਚਲਾਓ ਇਨਵੋਕ-ਇਤਿਹਾਸ 1; ਇਨਵੋਕ-ਇਤਿਹਾਸ 2
ਕਲੀਅਰ ਇਤਿਹਾਸ ਕਲੀਅਰ-ਇਤਿਹਾਸ
ਪਾਈਪਲਾਈਨ
ਪਾਵਰਸ਼ੇਲ ਵਿੱਚ ਇੱਕ ਪਾਈਪਲਾਈਨ ਉਦੋਂ ਹੁੰਦੀ ਹੈ ਜਦੋਂ ਪਹਿਲੇ ਫੰਕਸ਼ਨ ਦਾ ਨਤੀਜਾ ਦੂਜੇ ਨੂੰ ਪਾਸ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ਇੱਥੇ ਪਾਈਪਲਾਈਨ ਦੀ ਵਰਤੋਂ ਕਰਨ ਦਾ ਇੱਕ ਉਦਾਹਰਨ ਹੈ:
Get-Verb | Measure-Object
ਪਰ ਪਾਈਪਲਾਈਨ ਨੂੰ ਬਿਹਤਰ ਤਰੀਕੇ ਨਾਲ ਸਮਝਣ ਲਈ, ਆਓ ਇੱਕ ਸਧਾਰਨ ਉਦਾਹਰਣ ਲਈਏ। ਇੱਕ ਟੀਮ ਹੈ
Get-Verb "get"
ਜੇਕਰ ਅਸੀਂ Get-Help ਨੂੰ Get-Verb -Full help ਕਹਿੰਦੇ ਹਾਂ, ਤਾਂ ਅਸੀਂ ਦੇਖਾਂਗੇ ਕਿ ਕਿਰਿਆ ਪੈਰਾਮੀਟਰ ਪਾਈਪਲਾਈਨ ਇਨਪੁਟ ਨੂੰ ਸਵੀਕਾਰ ਕਰਦਾ ਹੈ ਅਤੇ ByValue ਬਰੈਕਟਾਂ ਵਿੱਚ ਲਿਖਿਆ ਗਿਆ ਹੈ।
ਇਸਦਾ ਮਤਲਬ ਹੈ ਕਿ ਅਸੀਂ Get-Verb ਨੂੰ "get" ਤੋਂ "get" | ਨੂੰ ਦੁਬਾਰਾ ਲਿਖ ਸਕਦੇ ਹਾਂ ਪ੍ਰਾਪਤ ਕਰੋ-ਕਿਰਿਆ।
ਭਾਵ, ਪਹਿਲੇ ਸਮੀਕਰਨ ਦਾ ਨਤੀਜਾ ਇੱਕ ਸਤਰ ਹੁੰਦਾ ਹੈ ਅਤੇ ਇਸਨੂੰ ਮੁੱਲ ਦੁਆਰਾ ਪਾਈਪਲਾਈਨ ਇਨਪੁਟ ਦੁਆਰਾ Get-Verb ਕਮਾਂਡ ਦੇ ਕਿਰਿਆ ਪੈਰਾਮੀਟਰ ਨੂੰ ਪਾਸ ਕੀਤਾ ਜਾਂਦਾ ਹੈ।
ਨਾਲ ਹੀ ਪਾਈਪਲਾਈਨ ਇਨਪੁਟ ByPropertyName ਹੋ ਸਕਦਾ ਹੈ। ਇਸ ਸਥਿਤੀ ਵਿੱਚ, ਅਸੀਂ ਇੱਕ ਵਸਤੂ ਨੂੰ ਪਾਸ ਕਰਾਂਗੇ ਜਿਸਦੀ ਇੱਕ ਸਮਾਨ ਨਾਮ ਵਰਬ ਵਾਲੀ ਵਿਸ਼ੇਸ਼ਤਾ ਹੈ।
ਵੇਰੀਬਲ
ਵੇਰੀਏਬਲ ਜ਼ੋਰਦਾਰ ਢੰਗ ਨਾਲ ਟਾਈਪ ਨਹੀਂ ਕੀਤੇ ਗਏ ਹਨ ਅਤੇ ਅੱਗੇ ਇੱਕ $ ਚਿੰਨ੍ਹ ਨਾਲ ਨਿਰਧਾਰਤ ਕੀਤੇ ਗਏ ਹਨ
$example = 4
> ਚਿੰਨ੍ਹ ਦਾ ਅਰਥ ਹੈ ਡੇਟਾ ਨੂੰ ਅੰਦਰ ਪਾਓ
ਉਦਾਹਰਨ ਲਈ, $example > File.txt
ਇਸ ਸਮੀਕਰਨ ਨਾਲ ਅਸੀਂ $example ਵੇਰੀਏਬਲ ਤੋਂ ਡੇਟਾ ਨੂੰ ਇੱਕ ਫਾਈਲ ਵਿੱਚ ਰੱਖਾਂਗੇ
ਸੈੱਟ-ਸਮੱਗਰੀ -ਮੁੱਲ $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