پاور شیل میں بیان کا استعمال

Pawr Shyl My Byan Ka Ast Mal



پاور شیل ایک مضبوط کمانڈ لائن شیل اور اسکرپٹنگ زبان ہے جو زیادہ تر کمپیوٹر سسٹم کو کنٹرول کرنے اور انتظامی کاموں کو خودکار کرنے کے لیے استعمال ہوتی ہے۔ بیانات کا استعمال پاور شیل کے سب سے اہم بنیادی اصولوں میں سے ایک ہے۔ خاص طور پر، ' استعمال کرتے ہوئے بیان وسائل کے انتظام اور موثر کوڈ پر عمل درآمد کو یقینی بنانے میں اہم کردار ادا کرتا ہے۔

یہ مضمون PowerShell میں 'استعمال' کے بیان کے مختلف پہلوؤں کو تلاش کرے گا، بشمول اس کی نحو، مقصد، اور عملی اطلاقات۔







'استعمال' بیان کا مقصد

'استعمال' کا بیان آپ کو یہ بتانے دیتا ہے کہ سیشن میں کون سے نام کی جگہیں استعمال کی جاتی ہیں۔ نام کی جگہیں شامل کر کے، آپ اسکرپٹ ماڈیولز اور اسمبلیوں سے کلاسز درآمد کر سکتے ہیں اور .NET کلاسز اور ممبرز کے استعمال کو آسان بنا سکتے ہیں۔



بیان کا 'استعمال' کرنا ضروری ہے۔

  • 'استعمال' کا بیان کسی دوسرے اسکرپٹ یا ماڈیول بیانات سے پہلے ظاہر ہونا چاہئے۔ پیرامیٹرز سمیت کسی بھی غیر تبصرہ شدہ بیانات سے اس سے پہلے نہیں ہو سکتا۔
  • کوئی بھی متغیر 'استعمال' کے بیان میں موجود نہیں ہونا چاہیے۔
  • 'استعمال' کے بیان کو متغیرات کے لیے 'استعمال:' اسکوپ موڈیفائر کے ساتھ الجھن میں نہیں ڈالنا چاہیے۔ وہ دونوں اپنے مقصد اور معنی میں مختلف ہیں۔

'استعمال کرتے ہوئے' بیان کا نحو



'استعمال' بیان کے لئے نحو ہے:





نام کی جگہ کا استعمال کرتے ہوئے < .NET-نام کی جگہ >

آئیے مندرجہ ذیل مثال کا جائزہ لیں:



namespace System.IO کا استعمال کرتے ہوئے

$Bytes = [ فائل ] ::ReadAllBytes ( 'D:\c sharp\Linuxhint1.txt' )
[ فائل کی معلومات ] ::نئی ( 'D:\c sharp\Linuxhint1.txt' )

مندرجہ بالا کوڈ میں، ہم نے پہلے نام کی جگہ 'System.IO' کو نامزد کیا۔ پروگرام کی دوسری سطر، [فائل]::ReadAllBytes('D:c sharpLinuxhint1.txt')، فراہم کردہ فائل سے ہر بائٹ کو پڑھتی ہے اور انہیں $Bytes متغیر میں رکھتی ہے۔ تیسری لائن میں، [FileInfo]::new('D:c sharpLinuxhint1.txt') FileInfo کلاس کی ایک نئی مثال بناتا ہے اور FileInfo آبجیکٹ کو واپس کرتا ہے۔

ماڈیولز کے لیے 'استعمال' کا بیان

ہم ماڈیول کی کلاسز لوڈ کرنے کے لیے 'استعمال' بیان کا بھی استعمال کر سکتے ہیں۔

نحو

ماڈیول کا استعمال کرتے ہوئے < ماڈیول کا نام >

اس نحو میں، ''، ایک مکمل ماڈیول تفصیلات، یا ماڈیول فائل کا راستہ 'ماڈیول نام' کی قدر کے طور پر استعمال کیا جا سکتا ہے۔

جب 'module-name>' ایک راستہ ہو تو آپ مکمل طور پر اہل یا متعلقہ راستہ استعمال کر سکتے ہیں۔ جب اسکرپٹ میں 'استعمال' کا بیان موجود ہوتا ہے، تو اس اسکرپٹ میں ایک رشتہ دار راستہ حل ہوجاتا ہے۔

پاور شیل PSModulePath میں فراہم کردہ ماڈیول کی تلاش کرتا ہے جب '' ایک نام یا ماڈیول کی تفصیلات ہے۔ مندرجہ ذیل کلیدیں ہیش ٹیبل بناتی ہیں جو کہ ماڈیول کی تصریح ہے۔

ماڈیول کا نام - درکار ہے۔ زیر بحث ماڈیول کا نام دیتا ہے۔

اختیاری GUID - ماڈیول کی GUID کی وضاحت کرتا ہے۔

مزید برآں، آپ کو ذیل میں درج تین کلیدوں میں سے ایک کی وضاحت کرنی ہوگی۔

ماڈیول ورژن - ماڈیول کا ایک کم از کم قابل اجازت ورژن 'ModuleVersion' پراپرٹی کے ذریعے بیان کیا گیا ہے۔

زیادہ سے زیادہ ورژن - ماڈیول کے سب سے زیادہ قابل اجازت ورژن کی وضاحت کرتا ہے۔

مطلوبہ ورژن - 'Required Version' کا استعمال کرتے ہوئے ماڈیول کے درست، ضروری ورژن کا تعین کرتا ہے۔ دوسرے ورژن کیز کو اس کے ساتھ استعمال نہیں کیا جا سکتا۔

بائنری ماڈیول یا اسکرپٹ ماڈیول کا روٹ ماڈیول (ModuleToProcess) 'استعمال' ماڈیول ڈیکلریشن کے ذریعے درآمد کیا جاتا ہے۔ نیسٹڈ ماڈیولز یا اسکرپٹس میں متعین کردہ کلاسز جو ماڈیول میں ڈاٹ سورس ہیں قابل اعتماد طریقے سے درآمد نہیں کی جاتی ہیں۔ کوئی بھی کلاس جو آپ ماڈیول سے باہر کے صارفین کے لیے دستیاب ہونا چاہتے ہیں ان کی وضاحت روٹ ماڈیول میں ہونی چاہیے۔

یہاں ایک مثال ہے:

ماڈیول PSReadline کا استعمال کرتے ہوئے

اسمبلی کے لیے 'استعمال' کا بیان

'استعمال' بیان کو .NET اسمبلی سے قسموں کو پہلے سے لوڈ کرنے کے لیے بھی استعمال کیا جا سکتا ہے۔

نحو

اسمبلی کا استعمال کرتے ہوئے < .NET-اسمبلی-پاتھ >

اس نحو میں، جب کسی اسمبلی کو لوڈ کیا جاتا ہے، تو اس اسمبلی سے .NET کی قسمیں اسکرپٹ میں پارس ہونے سے پہلے پہلے سے لوڈ ہوجاتی ہیں۔ نتیجے کے طور پر، نئی پاور شیل کلاسز تیار کرنا ممکن ہے جو پہلے سے لوڈ شدہ اسمبلی کی اقسام کو استعمال کرتی ہیں۔

'استعمال' کے بیان کو 'اسمبلی' کے ساتھ لاگو کرنے کی ایک مثال دیکھیں:

اسمبلی System.Windows.Forms کا استعمال کرتے ہوئے

اس کمانڈ میں، ہم نے اسمبلی کو لوڈ کیا ہے ' System.Windows.Forms' PowerShell میں 'استعمال' بیان کا استعمال کرتے ہوئے.

ہیش ٹیبل کیز کے لیے 'استعمال' کا بیان

' ہیش ٹیبلز ” قابل موافق ڈیٹا ڈھانچہ ہیں جو PowerShell میں مختلف مقاصد کے لیے استعمال ہوتے ہیں، بشمول کنفیگریشن ڈیٹا کو اسٹور کرنا، cmdlets کو دلائل فراہم کرنا، اور ڈیٹا کو اسکرپٹ میں اسٹور کرنا۔

سٹرنگ کے لیے خفیہ ہیش ' لینکس کا اشارہ! ' درج ذیل اسکرپٹ کے ذریعے حاصل کیا جاتا ہے:

نام کی جگہ کا استعمال کرتے ہوئے System.Text
namespace System.IO کا استعمال کرتے ہوئے [ تار ] $string = 'LinuxHint!'
[ تار ] $algorithm = 'SHA1'

[ بائٹ [ ] ] $stringbytes = [ یونیکوڈ انکوڈنگ ] ::Unicode.GetBytes ( $string )

[ ندی ] $میموری اسٹریم = [ میموری اسٹریم ] ::نئی ( $stringbytes )
$hashfromstream = گیٹ فائل ہیش -ان پٹ اسٹریم $میموری اسٹریم `
- الگورتھم $algorithm
$hashfromstream .Hash.ToString ( )

مندرجہ بالا پاور شیل کوڈ فائل آپریشنز اور انکوڈنگ کے لیے درکار نام کی جگہوں کو درآمد کرنے سے شروع ہوتا ہے۔ ان پٹ سٹرنگ اور ہیشنگ الگورتھم (اس معاملے میں ' SHA1 ”)، پھر تعریف کی جاتی ہے۔ پھر ان پٹ سٹرنگ کو ' کا استعمال کرتے ہوئے انکوڈ کیا جاتا ہے یونیکوڈ بائٹس کی ایک صف بنانے کے لیے۔

بائٹ سرنی کے مواد کو پھر 'بنانے کے لئے استعمال کیا جاتا ہے۔ میموری اسٹریم ' میموری اسٹریم سے ہیش ویلیو کا حساب فراہم کردہ 'SHA1' الگورتھم کا استعمال کرتے ہوئے کیا جاتا ہے۔ Get-FileHash 'cmdlet. اسکرپٹ حاصل شدہ ہیش ویلیو کو آؤٹ پٹ پر سٹرنگ کے طور پر پرنٹ کرکے ختم ہوتا ہے۔

آؤٹ پٹ

نتیجہ

' استعمال کرتے ہوئے پاور شیل میں بیان نام کی جگہوں، ماڈیولز، یا اسمبلیوں کی وضاحت کرنے کے لیے ایک طاقتور ٹول ہے۔ اس کا نحو اور مقصد وسائل کو سنبھالنے، مناسب طریقے سے ضائع کرنے اور کوڈ کی نقل کو کم کرنے کے لیے ایک معیاری اور محفوظ طریقہ فراہم کرتا ہے۔