ابتدائی افراد کے لیے پاور شیل

پاور شیل کے ساتھ کام کرتے وقت، پہلی چیز جس کا ہم سامنا کرتے ہیں وہ کمانڈز (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 پیرامیٹر پر نظر ڈالتے ہیں، تو آپ ان اقدار کو دیکھ سکتے ہیں جو گھوبگھرالی بریکٹ میں بند ہیں۔ اس پیرامیٹر کے لیے، ہم صرف گھوبگھرالی منحنی خطوط وحدانی میں پہلے سے طے شدہ اقدار استعمال کر سکتے ہیں۔

اس بارے میں معلومات کہ آیا پیرامیٹر کی ضرورت ہے، مطلوبہ فیلڈ میں نیچے دی گئی تفصیل میں دیکھی جا سکتی ہے۔ اوپر کی مثال میں، آفٹر انتساب اختیاری ہے کیونکہ Required کو غلط پر سیٹ کیا گیا ہے۔ اگلا، ہم اس کے مخالف پوزیشن فیلڈ دیکھتے ہیں جو کہتا ہے Named۔ اس کا مطلب ہے کہ آپ پیرامیٹر کو صرف نام سے ہی حوالہ دے سکتے ہیں، یعنی:

Get-EventLog -LogName Application -After 2020.04.26

چونکہ LogName پیرامیٹر میں Named کے بجائے نمبر 0 تھا، اس کا مطلب ہے کہ ہم نام کے بغیر پیرامیٹر کا حوالہ دے سکتے ہیں، لیکن اسے مطلوبہ ترتیب میں بتا کر:

Get-EventLog Application -After 2020.04.26

آئیے اس ترتیب کو مان لیتے ہیں:

Get-EventLog -Newest 5 Application

عرف

تاکہ ہم PowerShell میں کنسول سے حسب معمول کمانڈز استعمال کر سکیں، وہاں عرفی نام (عرف) موجود ہیں۔

سیٹ لوکیشن کمانڈ کے لیے ایک مثال عرف سی ڈی ہے۔

یعنی حکم کو پکارنے کے بجائے

Set-Location “D:”

ہم استعمال کر سکتے ہیں

cd “D:”

تاریخ

کمانڈ کالز کی تاریخ دیکھنے کے لیے، آپ گیٹ ہسٹری استعمال کر سکتے ہیں۔

تاریخ سے کمانڈ پر عمل کریں Invoke-History 1; ہسٹری 2 کو طلب کریں۔

ماضی مٹا دو

پائپ لائن

پاور شیل میں ایک پائپ لائن اس وقت ہوتی ہے جب پہلے فنکشن کا نتیجہ دوسرے کو دیا جاتا ہے۔ یہاں پائپ لائن کا استعمال کرتے ہوئے ایک مثال ہے:

Get-Verb | Measure-Object

لیکن پائپ لائن کو بہتر طور پر سمجھنے کے لیے، آئیے ایک آسان مثال لیتے ہیں۔ ایک ٹیم ملی

Get-Verb "get"

اگر آپ Get-Help کو Get-Verb -Full help کہتے ہیں، تو ہم دیکھیں گے کہ Verb کا پیرامیٹر پائپ لائن ان پٹ لیتا ہے اور ByValue بریکٹ میں لکھا جاتا ہے۔

ابتدائی افراد کے لیے پاور شیل

اس کا مطلب ہے کہ ہم Get-Verb "get" کو "get" | پر دوبارہ لکھ سکتے ہیں۔ GetVerb.
یعنی، پہلے اظہار کا نتیجہ ایک سٹرنگ ہے اور اسے قدر کے لحاظ سے پائپ لائن ان پٹ کے ذریعے Get-Verb کمانڈ کے Verb پیرامیٹر میں منتقل کیا جاتا ہے۔
نیز پائپ لائن ان پٹ ByPropertyName ہوسکتا ہے۔ اس صورت میں، ہم ایک ایسی چیز کو پاس کریں گے جس کی ایک خاصیت ہے جس کا نام Verb ہے۔

متغیرات

متغیرات کو مضبوطی سے ٹائپ نہیں کیا جاتا ہے اور ان کی وضاحت $ کے ساتھ ہوتی ہے۔

$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

پاور شیل میں کسی سرنی سے عنصر کو ہٹانے کا کوئی طریقہ نہیں ہے، لیکن آپ اسے اس طرح کر سکتے ہیں:

$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

نیا تبصرہ شامل کریں