احصل على كائن Wmi من الكمبيوتر البعيد: استكشف أجهزة الكمبيوتر باستخدام PowerShell
كيف يمكنني استكشاف أجهزة الكمبيوتر البعيدة باستخدام PowerShell؟ الإجابة هي باستخدام Get-WmiObject على الكمبيوتر البعيد. يوفر هذا المنشور لك درسًا كاملاً. استمر في القراءة إذا كنت مهتمًا.
كيف يمكنني الاتصال بـ WMI عن بُعد؟
الإدارة بواسطة Windows Management Instrumentation (WMI) هي بنية تحتية مضمنة في Windows تُستخدم لاستعلام البيانات الخاصة بالإدارة والعمليات. يمكن استخدامها للاستعلام عن معلومات العمليات القائمة والبرامج المثبتة ومعلومات الـ BIOS وغيرها الكثير.
يقوم الأمر Get-WmiObject بالحصول على مثيلات من فئات WMI أو معلومات عن فئات WMI المتاحة. يمكنك استخدام معامل ComputerName لتحديد جهاز كمبيوتر بعيد، حتى يمكنك الاتصال بـ WMI عن بُعد.
كيفية استخدام PowerShell Get-WmiObject على جهاز كمبيوتر بُعيد
فيما يلي، سنرى كيفية استخدام PowerShell Get-WmiObject على جهاز كمبيوتر بُعيد لجمع معلومات الكمبيوتر.
إذا تم تحديد معامل Query، فإن الأمر يقوم بتشغيل استعلام لغة استعلام WMI (WQL). إذا تم تحديد معامل List، يحصل الأمر على معلومات حول فئات WMI المتاحة في نطاق محدد. يتم استخدام معامل ComputerName لتحديد الأجهزة. دعنا نرى بعض الأمثلة.
أولاً، دعنا نختبر الاتصال بـ WMI على الجهاز الكمبيوتر البعيد. يظهر المثال أدناه تمكينك من اختبار الاتصال بـ WMI على الجهاز الكمبيوتر البعيد المسمى PC1.
- Get-WmiObject -query "SELECT * FROM Win32_OperatingSystem" -ComputerName PC1
يمكنك أيضًا استعراض قائمة مشاركات الشبكة من جهاز بعيد باستخدام فئة Powerahell"s WMI Win32_Share. هنا، FT ليست سوى أمر Format-Table، يمكنك تغييره إلى FL لعرض النتيجة كقائمة.
- Get-WMIObject -ComputerName "PC1" -Query "SELECT * FROM Win32_Share" | FL
يمكنك استخدام صيغة استعلام SQL لتطبيق عوامل التصفية في فئة Win32_Share. يقوم البرنامج النصي PowerShell التالي بتصفية القوائم وعرض مجلدات مشاركة الشبكة فقط (باستثناء المشاركات المخفية) عن طريق إضافة عامل التصفية Type=0.
- Get-WMIObject -ComputerName "PC1" -Query "SELECT * FROM Win32_Share Where Type=0" | FT
مزيد من الأمثلة
Example 1: يحصل على الخدمات على الجهاز الكمبيوتر البعيد PC1:
- Get-WmiObject -Class Win32_Service -ComputerName PC1
يمكنك أيضًا الحصول على الخدمات على جهاز كمبيوتر بعيد باستخدام Get-WmiObject
و Credential
. يوضح المثال التالي استخدام معامل Credential
. قيمة المعامل Credential
هي اسم حساب مستخدم. يتم طلب كلمة المرور من المستخدم.
- Get-WmiObject Win32_Service -Credential FABRIKAM\administrator -ComputerName Fabrikam
المثال 2: إيقاف خدمة على جهاز الكمبيوتر البعيد PC1:
- (Get-WmiObject -Class Win32_Service -Filter "name="WinRM"' -ComputerName PC1).StopService()
المثال 3: الحصول على BIOS على جهاز الكمبيوتر البعيد PC1:
- Get-WmiObject -Class Win32_Bios -ComputerName PC1 | Format-List -Property *
ملاحظة
يجب أن نشير إليكم بأن أمر Get-WmiObject
قد تم استبداله بواسطة Get-CimInstance
في PowerShell 3.0. على سبيل المثال، يعرض الأمر التالي اسم كل عملية قيد التشغيل مع وقت kernel الخاص بها من الأكبر إلى الأصغر:
- Get-CimInstance -Class Win32_Process -ComputerName DC1 | Select-Object -Property Name,KernelModeTime | Sort-Object KernelModeTime -Descending
AnyViewer: برنامج سطح مكتب عن بُعد لنظام التشغيل Windows
إذا كنت ترغب في وسيلة أكثر مباشرة للاستعلام عن بيانات إدارة وعمليات الكمبيوتر، فإننا نوصي بشدة باستخدام AnyViewer، وهو برنامج سطح المكتب عن بُعد مجاني يسمح لك بالتحكم في جهاز كمبيوتر عن بُعد من جهاز آخر. يوفر واجهة مستخدم رسومية لجهاز كمبيوتر بعيد، والتي تكون أكثر مباشرة وبديهية مقارنة بـ PowerShell.
الخطوة 1. قم بتنزيل وتثبيت وتشغيل AnyViewer على الكمبيوترين.
الخطوة 2. انتقل إلى تسجيل الدخول، ثم انقر على التسجيل. (إذا قمت بالفعل بـ التسجيل على الموقع الرسمي، يمكنك تسجيل الدخول مباشرة.)
الخطوة 3. قم بملء معلومات التسجيل.
الخطوة 4. بعد ذلك ، يمكنك رؤية تسجيل الدخول الناجح إلى AnyViewer. ستتم تعيين جهازك تلقائيًا إلى الحساب الذي قمت بتسجيل الدخول إليه.
الخطوة 5. سجّل الدخول إلى نفس حساب AnyViewer على الجهازين ، ثم انقر فوق One-click control لتحقيق الوصول البعيد غير المراقب.
✍ملاحظة: إذا قمت بترقية حسابك إلى خطة محترفة أو تجارية ، فسوف تحصل على المزيد من الحقوق:
- يمكنك تعيين المزيد من الأجهزة لتحقيق الوصول البعيد غير المراقب.
- سيتم عرض المزيد من الأجهزة المتصلة حاليًا ، مما يسهل عليك عرض المزيد من سجلات الاتصال في أي وقت.
- يمكنك الاتصال بحاسوب آخر في وضع الخصوصية ، مما يعني أنه يمكنك تظليل الشاشة وحظر الفأرة ولوحة المفاتيح للحاسوب البعيد ، مما يحمي خصوصيتك بشكل أكبر.
الخطوة 6. بعد أن تحصل على التحكم الكامل في الحاسوب البعيد ، يمكنك بعدها فتح أي برنامج وإدارته كما لو كنت تستخدمه فعليًا.
الخلاصة
يوفر هذا المنشور لك درسًا كاملاً حول كيفية استخدام PowerShell Get-WmiObject على جهاز كمبيوتر عن بُعد للجمع بين معلومات الكمبيوتر. إذا كنت ترغب في طريقة أكثر مباشرة وبديهية للاستعلام عن إدارة الكمبيوتر وبيانات العمليات، يُنصح بإستخدام AnyViewer.