উইন্ডোজ অ্যাডমিনদের জন্য 18টি সবচেয়ে দরকারী পাওয়ারশেল কমান্ড

18 ডিসেম্বর, 2021 19859 ভিউ সবচেয়ে দরকারী পাওয়ারশেল কমান্ড

এই এস জোনে, ভিক্টর সিস্যাডমিনদের জন্য সবচেয়ে দরকারী পাওয়ারশেল কমান্ডের চূড়ান্ত তালিকা শেয়ার করেন। প্রতিটি কমান্ডের জন্য, তিনি সিনট্যাক্স এবং পরামিতি ব্যাখ্যা করেন। তারপর কিছু উদাহরণ দিয়ে শেষ করুন।

এই S জোনে, আমি PowerShell কমান্ড, PS, PowerShell Cmdlets এবং Cmdlets, বিনিময়যোগ্যভাবে ব্যবহার করব।

পোস্ট বিষয় ব্রাউজ করুন

Cmdlets খুঁজে পেতে এবং সাহায্য পেতে সবচেয়ে দরকারী Powershell কমান্ড

আপনি সবচেয়ে দরকারী PowerShell কমান্ড সম্পর্কে কথা বলতে পারবেন না কিভাবে তাদের খুঁজে বের করতে হয়। নীচে PowerShell কমান্ডগুলি রয়েছে যা আপনাকে Cmdlets খুঁজে পেতে সাহায্য করবে৷

গেট-কমান্ড

Get-Command Cmdlet হল প্রথম এবং সবচেয়ে গুরুত্বপূর্ণ PS একজন PowerShell নবাগতের শিখতে হবে এবং কীভাবে ব্যবহার করতে হবে তা জানা উচিত। কেন? এটি আপনাকে অন্যান্য PowerShell Cmdlet খুঁজে পেতে সাহায্য করে। এটি করতে পারে এমন একটি কমান্ডের চেয়ে কী কমান্ড বেশি গুরুত্বপূর্ণ হতে পারে?

আপনার কম্পিউটারে সমস্ত পিএস কমান্ড খুঁজে পেতে, নীচের এই কমান্ডটি চালান:

|_+_| সবচেয়ে দরকারী পাওয়ারশেল কমান্ড

Get-Command Cmdlet এর ফলাফল বোঝা

গেট-কমান্ড আউটপুটের ফলাফলে চারটি কলাম রয়েছে

  1. কমান্ড টাইপ : এটি আপনাকে বলে যে কমান্ড একটি উপনাম, একটি Cmdlet, বা একটি ফাংশন।
  2. নাম : নাম হল আসল কমান্ড যা আপনি চালান।
  3. সংস্করণ : এটি পাওয়ারশেল সংস্করণ
  4. উৎস : PS কমান্ডের মডিউল।

এই তথ্য দিয়ে, আপনি Get-Command থেকে ফলাফল ফিল্টার করতে পারেন। বলুন আপনি ইভেন্টলগ শব্দ সম্বলিত পাওয়ারশেল কমান্ড দেখতে চান, নীচের কমান্ডটি চালালে কাজটি সম্পন্ন হবে:

|_+_|

আমি যেখানে তারকাচিহ্ন যোগ করেছি লক্ষ্য করুন। আমি এটা সচেতন কারণ এটা
EventLog হল Cmdlets-এর বিশেষ্য অংশ। যাইহোক, যদি আপনি এমনকি জানেন না আপনি শুরুতে তারকাচিহ্ন যোগ করার চেষ্টা করতে পারেন তারপর শেষ চেষ্টা করুন।

নীচে পূর্ববর্তী কমান্ডের ফলাফল।

গেট-কমান্ড প্যারামিটার

সবশেষে, আমরা এগিয়ে যাওয়ার আগে, Get-Command Cmdlet-এর পরামিতি নিয়ে আলোচনা করা যাক।

Get-Command কমান্ড সম্পর্কে সমস্ত পরামিতি এবং তথ্য পেতে, নীচের এই কমান্ডটি চালান:

|_+_|

এটি আপনাকে Get-Command Cmdlet সংক্রান্ত সমস্ত তথ্য দেবে।

আমি পরবর্তী Get-Help Cmdlet নিয়ে আলোচনা করব।

সাহায্য পান

Get-Command Cmdlet আপনার প্রয়োজন Cmdlet খুঁজে পাওয়ার সময় Get-Help PowerShell কমান্ড আপনাকে কমান্ড চালানোর জন্য প্রয়োজনীয় তথ্য দেয়।

Get-Help Cmdlet ব্যবহার করার সবচেয়ে সহজ ওয়াট হল Get-Help প্রবেশ করানো এবং আপনি যে কমান্ডের বিষয়ে তথ্য চান সেটি অনুসরণ করুন। Get-EventLog Cmdlet সম্পর্কে আরও তথ্য পেতে, নীচের কমান্ডটি চালান:

|_+_|

এটি আপনাকে Get-EventLog PowerShell কমান্ড সম্পর্কে প্রাথমিক তথ্য দেবে। নীচে ফলাফল দেখুন:

Get-Help কমান্ডের কিছু গুরুত্বপূর্ণ পরামিতি

অন্য যেকোনো PowerShell Cmdlet এর মতো, Get-Help Cmdlet-এর অনেকগুলি পরামিতি রয়েছে। নীচে আপনার প্রয়োজন হবে সবচেয়ে গুরুত্বপূর্ণ পরামিতি.

  1. -বিশদ : দ্য বিশদ প্যারামিটার আপনাকে SYNTAX, PARAMTERS, ALIASES এবং REMARKS কমান্ড দেয়।
  2. -সম্পূর্ণ : সম্পূর্ণ দ্বারা প্রদত্ত অনুরূপ তথ্য দেয় বিশদ প্রতিটি প্যারামিটার সম্পর্কে আরও তথ্য সহ প্যারামিটার
  3. - উদাহরণ : কিভাবে Cmdlet ব্যবহার করতে হয় তার উদাহরণ দেয়। আপনি যদি আগে কখনও Cmdlet ব্যবহার না করে থাকেন এবং কীভাবে এগিয়ে যেতে হয় তা ক্ষতিগ্রস্থ হলে এটি খুব কার্যকর হতে পারে।
  4. -অনলাইন : Cmdlet এর অনলাইন সহায়তা পৃষ্ঠা খোলে।
একটি PS Cmdlet-এর পরামিতি দেখতে, PS-এ Cmdlet টাইপ করুন, স্পেস কী টিপুন, হাইফেন টাইপ করুন - তারপর ট্যাব কী। আপনি ট্যাব কী টিপলে আপনি উপলব্ধ পরামিতিগুলির মাধ্যমে স্ক্রোল করবেন।

ফাইল এবং ফোল্ডার পরিচালনার জন্য সবচেয়ে দরকারী পাওয়ারশেল কমান্ড

এখন আপনি পাওয়ারশেল কমান্ডগুলি কীভাবে খুঁজে পাবেন তা জানেন, আসুন আপনাকে হুডের মধ্যে নিয়ে যেতে দিন। সবচেয়ে দরকারী পাওয়ারশেল কমান্ডগুলির পরবর্তী সেট হল Cmdlets যা আপনাকে ফাইল এবং ফোল্ডারগুলি পরিচালনা করতে সহায়তা করে।

Get-ChildItem

একটি নির্দিষ্ট স্থানে আইটেম পায়. আমার ড্রাইভ সি-তে ফোল্ডারগুলি তালিকাভুক্ত করতে, আমি নীচের কমান্ডটি চালাব:

|_+_|

এটি সমস্ত শীর্ষ স্তরের ফোল্ডার তালিকাভুক্ত করবে। সমস্ত ফাইল তালিকাভুক্ত করতে, ফোল্ডারগুলিতে সাব-ফোল্ডারগুলি অন্তর্ভুক্ত থাকে - পুনরাবৃত্তি প্যারামিটার

প্রো টিপ
আপনি একটি নির্দিষ্ট ডিরেক্টরিতে প্রতিটি ফোল্ডারের আকার গণনা করতে অন্যান্য Cmdlet এর সাথে Get-ChildItem Cmdlet লেট একত্রিত করতে পারেন।

কপি-আইটেম এবং সরান-আইটেম

আপনি একটি ফোল্ডারে আইটেম তালিকাভুক্ত করতে Get-ChildItem Cmdlet ব্যবহার করতে পারেন, তারপর একটি নতুন অবস্থানে আইটেমগুলি অনুলিপি করতে কপি-আইটেম Cmdlet-এ ফলাফল পাইপ করুন৷ নীচের কমান্ড কাজ করবে:

|_+_| উপরের পাওয়ারশেল কমান্ডটি শুধুমাত্র শীর্ষ স্তরের ফোল্ডার এবং ফাইলগুলি অনুলিপি করবে - এটি সাব-ফোল্ডার এবং ফাইলগুলি অনুলিপি করবে না। সাব-ফোল্ডার সহ সমস্ত ফাইল এবং ফোল্ডার কপি করতে, অন্তর্ভুক্ত করুন - পুনরাবৃত্তি Get-ChildItem কমান্ডের প্যারামিটার নিচে দেখানো হয়েছে: |_+_|

যখন কপি-আইটেম Cmdlet আইটেমগুলিকে এক স্থান থেকে অন্য স্থানে কপি করে তখন মুভ-আইটেম Cmdlet আইটেমটিকে সরিয়ে দেয়।

পদ সরাও

এই Cmdlet নির্দিষ্ট আইটেম মুছে দেয়। কপি-আইটেম এবং মুভ-আইটেম Cmdlets-এর মতো আপনি Get-ChildItem-এর আউটপুটটি সরিয়ে-আইটেমকে পাইপ করতে পারেন।

Remove-Item Cmdlet সাবধানতার সাথে ব্যবহার করুন কারণ এটি Windows ফাইল সহ আপনার কম্পিউটারের সমস্ত ফাইল এবং ফোল্ডার মুছে ফেলতে পারে! প্রো টিপ
Get-ChildItem-এর আউটপুটকে Remove-Item-এর জন্য পাইপ করে, আপনি একটি সাধারণ স্ক্রিপ্ট তৈরি করতে পারেন যা নিয়মিত বেসে কিছু লগ ফাইল মুছে ফেলবে। আপনি উইন্ডোজ শিডিউলার ব্যবহার করে নির্দিষ্ট সময়ে চালানোর জন্য পিএস স্ক্রিপ্ট নির্ধারণ করতে পারেন।

রিপোর্ট করার জন্য সবচেয়ে দরকারী পাওয়ারশেল কমান্ড

PowerShell কমান্ডের 3 সেট রয়েছে যা আপনি CVS-এ আইটেম রপ্তানি করতে, পাঠ্য ফাইলে এবং HTML ফাইলগুলিতে রপ্তানি করতে ব্যবহার করতে পারেন। আমরা পরবর্তী এই 3 নিয়ে আলোচনা করব।

রপ্তানি-Csv

Export-Csv স্ট্রিং এর একটি সেটকে CSV এ রূপান্তর করে এবং একটি ফাইলে সংরক্ষণ করে। রিপোর্ট করার ক্ষেত্রে এই Cmdlet খুবই গুরুত্বপূর্ণ।

এক্সপোর্ট-সিএসভি ব্যবহার প্রদর্শন করতে, নীচের কমান্ডটি চালান:

|_+_|

এখানে আদেশের ফলাফল।

পাওয়ারশেল কমান্ড

পূর্ববর্তী ছবিতে দেখানো ফলাফলের একটি CVS রিপোর্ট তৈরি করতে আপনি পূর্ববর্তী কমান্ডের আউটপুটকে Export-CSV-এ পাইপ করতে পারেন।

এই কাজটি সম্পন্ন করার জন্য এখানে নির্দেশ রয়েছে।

|_+_|

মনে রাখবেন যে আমাকে পাথে CSV ফাইলের নাম অন্তর্ভুক্ত করতে হয়েছিল। আমার আরেকটি প্যারামিটার আছে -না টাইপ ইনফরমেশন . -NoTypeInformation সম্পর্কে আরও জানতে, এই নিবন্ধটি পড়ুন PowerShell NoTypeInformation: অ্যাপ্লিকেশন এবং ব্যবহার।

আগের কমান্ডে আরেকটি Cmdlet আছে, সিলেক্ট-অবজেক্ট . এই Cmdlet CSV-এ ফেরত ও রপ্তানি করার জন্য কলাম নির্দিষ্ট করতে ব্যবহার করা হয়েছিল। বাদ দিলে সিলেক্ট-অবজেক্ট CSV এর আউটপুটে প্রচুর অবাঞ্ছিত ডেটা থাকবে। পরে এই টিউটোরিয়ালে, আমি সিলেক্ট-অবজেক্ট কভার করব।

আপনার রেফারেন্সের জন্য, নীচে CSV ফাইলের আউটপুট রয়েছে৷

পাওয়ারশেল কমান্ড

যদিও এই প্রতিবেদনটি আগের চিত্রে দেখানো আউটপুটের সাথে খুব মিল, এটি একটি প্রতিবেদন হিসাবে আরও কার্যকর। আপনি আপনার বসের কাছে CSV ফাইল পাঠাতে পারেন!

আউট-ফাইল

আউট-ফাইল Cmdlet একটি পাঠ্য ফাইলে আউটপুট পাঠায়

নীচের কমান্ডটি একটি CSV এর পরিবর্তে Get-Command PowerShell Cmdlet থেকে একটি পাঠ্য ফাইলে রপ্তানি করবে:

|_+_|

এখানে একটি টেক্সট ফাইলের ফলাফল: একই রিপোর্ট, এখন একটি টেক্সট ফাইল! এটা কত ভালো!

আপনি যদি প্রতিদিন এই প্রতিবেদনটি চালান এবং আগের দিনের বিষয়বস্তুটিকে ওভার-রাইট করতে না চাইলে বরং যুক্ত করতে চান তাহলে কী হবে। এই কমান্ড কাজ করবে.

|_+_|

প্রসেস ম্যানেজ করার জন্য সবচেয়ে দরকারী পাওয়ারশেল কমান্ড

উইন্ডোজ অ্যাডমিনিস্ট্রেটরদের জন্য সবচেয়ে দরকারী পাওয়ারশেল কমান্ডগুলির আরেকটি সেট হল উইন্ডোজ প্রক্রিয়াগুলি পরিচালনা করার জন্য Cmdlets। তাদের তাকান যাক.

পান-প্রক্রিয়া

এই PowerShell Cmdlet একটি স্থানীয় কম্পিউটারে চলমান সমস্ত প্রক্রিয়া তালিকাভুক্ত করে। এটি একটি দূরবর্তী কম্পিউটারে চলমান প্রক্রিয়াগুলিও পেতে পারে - এর সাথে - কম্পিউটার নাম প্যারামিটার

যাইহোক, আপনি যখন কোনো প্যারামিটার ছাড়া Get-Process PowerShell Cmdlet চালান, তখন এটি স্থানীয় কম্পিউটারে চলমান সমস্ত প্রক্রিয়া ফেরত দেয়। এটি চেষ্টা করার জন্য, নীচের কমান্ডটি চালান। ফলাফল নীচের ছবিতে দেখানো হয়েছে.

|_+_|

স্টার্ট-প্রসেস এবং স্টপ-প্রসেস পাওয়ারশেল কমান্ড

Get-Process PowerShell কমান্ড স্টার্ট-প্রসেস এবং স্টপ-প্রসেস PowerShell Cmdlets-এর সাথে একটি প্রক্রিয়া বা প্রক্রিয়ার সেট শুরু বা বন্ধ করতে কাজ করতে পারে।

ধরা যাক আপনি Get-Process PowerShell কমান্ডটি কার্যকর করেছেন কিন্তু আপনি একটি নির্দিষ্ট প্রসেস আইডি 10500 সহ একটি প্রক্রিয়া বন্ধ করতে চান, নীচের কমান্ডটি কাজটি করবে।

|_+_| সতর্কতা !
স্টপ-প্রসেস পাওয়ারশেল সিএমডিলেট সতর্কতার সাথে ব্যবহার করুন কারণ ভুল প্রক্রিয়া বন্ধ করা আপনার কম্পিউটারকে অস্থির করে তুলতে পারে।

প্রক্রিয়াটি শুরু করার জন্য, Get-Process PowerShell কমান্ডের আউটপুটটি Stop-Process PowerShell Cmdlet-এ পাইপ করুন।

ইভেন্ট লগ পরিচালনা করার জন্য সবচেয়ে দরকারী পাওয়ারশেল কমান্ড

ইভেন্ট লগ ম্যানেজমেন্ট উইন্ডোজ অ্যাডমিনিস্ট্রেটরদের জন্য সবচেয়ে গুরুত্বপূর্ণ কাজগুলির মধ্যে একটি। সুতরাং, PowerShell কমান্ডের পরবর্তী সেট আপনাকে ইভেন্ট লগ পরিচালনা করতে সাহায্য করবে।

ইভেন্টলগ পান

Get-EventLog PowerShell Cmdlet একটি নির্দিষ্ট ইভেন্ট লগে ইভেন্ট পায়। আপনি স্থানীয় বা দূরবর্তী কম্পিউটারে ইভেন্ট পেতে পারেন। দূরবর্তী কম্পিউটার থেকে ইভেন্টগুলি পেতে, ব্যবহার করুন - কম্পিউটার নাম দূরবর্তী কম্পিউটার নির্দিষ্ট করার পরামিতি। যাইহোক, মনে রাখবেন যে দূরবর্তী কম্পিউটার অ্যাক্সেস করার জন্য আপনাকে সঠিক অনুমতির প্রয়োজন হবে।

সিস্টেম ইভেন্ট লগে লগ করা শেষ 5টি ইভেন্ট পেতে, নীচের কমান্ডটি চালান

|_+_| প্রো টিপ
শেষ কমান্ডটি সমস্যা সমাধানের উদ্দেশ্যে ব্যবহার করা যেতে পারে।

ক্লিয়ার-ইভেন্টলগ

আপনি যেমন আশা করবেন আরও ইভেন্ট লগ Cmdlets আছে কিন্তু আমরা এই টিউটোরিয়ালের জন্য এই 2টি কভার করব।

Clear-EventLog নির্দিষ্ট ইভেন্ট লগের সমস্ত ইভেন্ট সাফ করে। Cmdlet স্থানীয় এবং দূরবর্তী উভয় কম্পিউটারে ইভেন্ট লগ সাফ করতে পারে।

নীচের কমান্ডটি স্থানীয় কম্পিউটার থেকে Windows PowerShell নামের সমস্ত ইভেন্ট সাফ করে

|_+_| নীচের কমান্ডটি কার্যকর করতে, আপনাকে প্রশাসক হিসাবে PowherShell খুলতে হবে - ডান-ক্লিক করুন এবং প্রশাসক হিসাবে চালান নির্বাচন করুন।

আপনার কম্পিউটার সম্পর্কে তথ্য পেতে সবচেয়ে দরকারী PowerShell কমান্ড

আপনি যদি আপনার নেটওয়ার্কে কম্পিউটার সম্পর্কে ডেটা সংগ্রহ করতে চান - কম্পিউটারের নাম, BIOS সংস্করণ, RAM সাইজ, ডিস্ক তথ্য, ইত্যাদি - Get-WmiObject POwerShell Cmdlet আপনার বন্ধু! এই শক্তিশালী Cmdlet অন্বেষণ করা যাক, আমরা কি.

Get-WmiObject

Get-WmiObject নামক একটি প্যারামিটার আছে - ক্লাস এটি আপনাকে WMI অবজেক্টটি নির্দিষ্ট করতে দেয় যা আপনি অ্যাক্সেস করতে চান। নীচের কমান্ডটি WMI ক্লাসের একটি তালিকা পাবে, |_+_|

একবার আপনি WMI ক্লাসের নাম জেনে গেলে, আপনি স্থানীয় বা দূরবর্তী কম্পিউটার থেকে দরকারী তথ্য ফেরত দিতে Get-WmiObject চালাতে পারেন। নীচে আপনার প্রয়োজন হতে পারে সবচেয়ে গুরুত্বপূর্ণ WMI ক্লাসগুলির একটি তালিকা

  • Win32_PhysicalMemory – উপলব্ধ মেমরি সম্পর্কে তথ্য
  • Win32_Processor - প্রসেসরের তথ্য
  • Win32_LogicalDisk - লজিক্যাল ডিস্ক ড্রাইভ তথ্য
  • Win32_DiskDrive - শারীরিক ডিস্ক তথ্য
  • Win32_OperatingSystem - অপারেটিং সিস্টেম সম্পর্কে তথ্য
  • Win32_BaseBoard - মাদারবোর্ড সম্পর্কে তথ্য পান

অপারেটিং সিস্টেম সম্পর্কে তথ্য পেতে, নীচের কমান্ডটি চালান:

|_+_|

রিমোট পাওয়ারশেল সেশনের সাথে সংযোগ করার জন্য সবচেয়ে দরকারী PowerShell কমান্ড

আপনি PS রিমোটিং সম্পর্কে কথা না বলে পাওয়ারশেল কমান্ডগুলি নিয়ে আলোচনা করতে পারবেন না। একজন উইন্ডোজ সিস্টেম অ্যাডমিনিস্ট্রেটর হিসেবে, আপনাকে PowerShell ব্যবহার করে কম্পিউটারের সাথে দূরবর্তীভাবে সংযোগ করতে হবে।

এখানে আপনার প্রয়োজন হবে কমান্ড আছে.

এন্টার-PSSession এবং Exit-PSSession PowerShell কমান্ড

Enter-PSSession PowerShell কমান্ড আপনাকে ইন্টারেক্টিভভাবে একটি কম্পিউটারে একটি দূরবর্তী PS সেশন শুরু করতে দেয়। আপনি যখন দূরবর্তী কম্পিউটারের সাথে শেষ করেন, তখন Exit-PSSession কমান্ড দিয়ে সেশনটি শেষ করুন।

Computer1 নামে একটি কম্পিউটারের সাথে একটি দূরবর্তী PS সেশন খুলতে, নীচের কমান্ডটি চালান:

|_+_|

ইনভোক-কমান্ড

যদিও Enter-PSSession PowerShell Cmdlet আপনাকে একটি একক দূরবর্তী কম্পিউটারে কমান্ড চালানোর অনুমতি দেয়, Invoke-Command Cmdlet আপনাকে এক বা একাধিক দূরবর্তী কম্পিউটারে কমান্ড চালানোর অনুমতি দেয়।

আপনি যদি Computer1, Computer2, Computer3 এ Get-Process কমান্ড চালাতে চান, তাহলে এই কমান্ডটি চালান:

|_+_|

নতুন-পিএসএসশন

New-PSSession PowerShell Cmdlet আপনাকে দূরবর্তী কম্পিউটারের সাথে একটি স্থায়ী সেশন খুলতে দেয়। যেহেতু সেশনটি স্থায়ী, এটি একটি ভেরিয়েবলে দূরবর্তী সেশন যোগ করা একটি ভাল ধারণা।

Computer1, Computer2 কম্পিউটারে একটি স্থায়ী রিমোট PS সেশন খুলতে, নীচের কমান্ডটি চালান:

|_+_|

$session ভেরিয়েবলে PS সেশন প্রতিষ্ঠিত ও সংরক্ষিত হলে, আপনি রিমোট সেশনে সাধারণ PowerShell কমান্ড চালাতে পারেন
ইনভোক-কমান্ড পাওয়ারশেল সিএমডিলেট।

দূরবর্তী PowerShell সেশনে একটি চূড়ান্ত উদাহরণ হিসাবে, দূরবর্তী কম্পিউটারে Get-Process কার্যকর করতে, কমান্ডটি চালান:

|_+_| আমি Get-Process কমান্ডের ফলাফল $Processes নামক একটি ভেরিয়েবলে সংরক্ষণ করেছি কারণ একাধিক কম্পিউটার রয়েছে। একটি ভেরিয়েবলে ফলাফল সংরক্ষণ করা সহজ ডেটা ম্যানিপুলেশনের জন্য তৈরি করে। আপনি ডেটা বের করতে এবং সংগঠিত করতে aForEach লুপ ব্যবহার করতে পারেন।

আপনার কাছে এটি আছে - আমার সবচেয়ে দরকারী পাওয়ারশেল কমান্ডের চূড়ান্ত তালিকা! আমি আশা করি আপনি এই এস জোনটি সহায়ক বলে মনে করেছেন।

বিকল্পভাবে, আপনি একটি প্রশ্ন জিজ্ঞাসা করতে পারেন, একটি মন্তব্য করতে পারেন বা এই পৃষ্ঠার শেষে পাওয়া একটি উত্তর ছেড়ে দিন ফর্মের সাথে প্রতিক্রিয়া প্রদান করতে পারেন।

অবশেষে, আরও PowerShell S জোনের জন্য, আমাদের Windows PowerShell পৃষ্ঠা দেখুন।