PowerShell:
ডিবাগার ব্যবহার করা

কিভাবে:

পাওয়ারশেলে, আপনি নির্মিত পাওয়ারশেল ইন্টিগ্রেটেড স্ক্রিপ্টিং এনভায়রনমেন্ট (ISE) অথবা ভিজুয়াল স্টুডিও কোড (VS কোড) এর সাথে পাওয়ারশেল এক্সটেনশন ব্যবহার করে স্ক্রিপ্ট ডিবাগ করতে পারেন। এখানে উভয়েতে ব্রেকপয়েন্ট ব্যবহারের উপায় দেওয়া হলো:

পাওয়ারশেল ISE:

# নির্দিষ্ট লাইনে একটি ব্রেকপয়েন্ট সেট করুন
Set-PSBreakpoint -Script .\MyScript.ps1 -Line 5

# আপনার স্ক্রিপ্ট স্বাভাবিকভাবে চালান
.\MyScript.ps1

# স্ক্রিপ্ট যখন ব্রেকপয়েন্টে পৌঁছায়, আপনি ভেরিয়েবল নিরীক্ষণ করতে পারেন
$myVariable

# এক্সিকিউশন চালিয়ে যান
Continue

ভিজুয়াল স্টুডিও কোড:

# আপনার পাওয়ারশেল স্ক্রিপ্ট ভিএস কোডে খুলুন।
# লাইন নম্বরের বাম পাশে ক্লিক করে একটি ব্রেকপয়েন্ট সেট করুন।
# ডিবাগিং শুরু করতে F5 চাপুন অথবা 'স্টার্ট ডিবাগিং' এ ক্লিক করুন।

# ভিএস কোড আপনার ব্রেকপয়েন্টে এক্সিকিউশন স্থগিত করবে।
# ডিবাগ প্যানেল ব্যবহার করে ভেরিয়েবল দেখুন, কল স্ট্যাক নিরীক্ষণ করুন, এবং প্রবাহ নিয়ন্ত্রণ করুন।

উভয় পরিবেশে ডিবাগিং আপনাকে ডিবাগিংয়ের সময় (F11), উপর দিয়ে পদক্ষেপ (F10), এবং বেরিয়ে আসা (Shift+F11) সম্ভব করে তোলে।

গভীর ডুব

ঐতিহাসিকভাবে, পাওয়ারশেলে ডিবাগিং একটু জটিল ছিল; ভেরিয়েবলের অবস্থা আউটপুট করতে অনেক Write-Host লাইন বা ক্লাসিক ট্রায়াল-এন্ড-এরর পদ্ধতি প্রয়োজন ছিল। পাওয়ারশেল ISE এর আগমনের সাথে, এবং সম্প্রতি ভিএস কোড এর সাথে এর সমৃদ্ধ ডিবাগিং বৈশিষ্ট্যের সাথে, পাওয়ারশেল ডিবাগিং প্রায় পূর্ণ-বৈশিষ্ট্যসম্পন্ন প্রোগ্রামিং ভাষায় যেমন ছিল তেমনই সহজাত হয়ে উঠেছিল।

পাওয়ারশেলের নেটিভ ডিবাগিং টুলের বিকল্পের মধ্যে থার্ড-পার্টি টুলস যেমন PowerGUI অথবা ভিজুয়াল স্টুডিও মতো রোবাস্ট IDEs ব্যবহার করা অন্তর্ভুক্ত রয়েছে যেখানে পাওয়ারশেল প্লাগইন রয়েছে।

একটি ডিবাগার বাস্তবায়ন করার সময়, বিশেষ করে দট-সোর্সড স্ক্রিপ্ট বা মডিউলের সাথে কাজ করার সময় স্ক্রিপ্টের স্কোপ বিবেচনা করুন। ডিবাগিং সেশনের সময় নির্দিষ্ট নিয়ন্ত্রণের জন্য ব্রেকপয়েন্টগুলি শর্তভিত্তিক, ভেরিয়েবল পরিবর্তন-ভিত্তিক, অথবা লাইন-ভিত্তিক হতে পারে।

তাছাড়া, পাওয়ারশেল কোরের (ক্রস-প্ল্যাটফর্ম পাওয়ারশেল) সাথে সংক্রমণের সাথে সাথে, ডিবাগিং মূলত ভিএস কোডের হাতে চলে গেছে, যা বিভিন্ন প্ল্যাটফর্মে একটি ধারাবাহিক অভিজ্ঞতা প্রদান করে।

আরও দেখুন

পাওয়ারশেলে ডিবাগিং সম্পর্কে আরও জানতে: