الأمر النهاري لليوم هو “PowerShell Test-Connection”. Test-Connection
هو أمر يختبر اتصالك بالشبكة، كما يوحي اسمه. اعتبر Test-Connection
تنفيذاً لأداة ping المعروفة في PowerShell. على الرغم من وجود بروتوكول ICMP مشترك بينهما، ستلاحظ أن الطريقتين مختلفتين قليلاً.
استخدام هذا الأمر بسيط. في أبسط حالاته، قم بتحديد معلمة ComputerName
وسيُرسل أربع طلبات ICMP إلى المضيف المعني.
تبدو هذه النتيجة مشابهة لنتيجة ping.exe وعلى السطح، هي كذلك، ولكن اختلاف طريقة إصدار طلب ICMP في Powershell test-connection. على عكس ping.exe، فإن Test-Connection
يستخدم فئة WMI Win32_PingStatus على جهاز الكمبيوتر المحلي لإرسال طلب ICMP. باستخدام مستودع WMI المحلي يجب التأكد من سلامته وإلا فلن يعمل Test-Connection
.
مخرجات أمر PowerShell Test-Connection
وبالإضافة إلى ذلك، كما هو الحال مع جمال PowerShell، هذا الأمر لا يقتصر على إظهار ما يظهر في الواجهة فقط. نرى أنواع كائنات غنية يمكننا الحصول على معلومات إضافية منها.
إذا قمت بتعيين الناتج إلى متغير ثم فحصت الخصائص، يمكنك أن ترى أنني حصلت على معلومات أكثر فائدة.
إذا كنت تختبر المضيفين الداخليين، ستستخدم Test-Connection
DCOM للمصادقة على المضيفين البعيدين افتراضيًا، ولكن يمكن دائمًا تغيير نوع المصادقة باستخدام معلمة DcomAuthentication
.
استخدام الوظائف الخلفية
يمكن لهذا الأمر أيضًا أن يعمل كوظيفة خلفية. تأتي الوظائف الخلفية بمساعدة إذا كان لديك الكثير من الكمبيوترات البعيدة لعمل عملية بنج عليها، بدلاً من الانتظار إلى الأبد للكمبيوترات التي ستنتهي في النهاية بالتوقف عن الرد، ما عليك سوى إرسالها إلى وظيفة خلفية.
وفقًا لمساعدة PowerShell لـ Powershell test-connections، يقول أنه يجب تمكين التحكم عن بعد في PowerShell على كل من الكمبيوترين المحلي والبعيد، ولكن هذا غير صحيح. كما يمكنك رؤية أدناه، أقوم بفحص google.com، والأمر ما زال يعمل بشكل جيد.


الحفاظ على الأمور بسيطة
أخيرًا، إذا كنت تبحث فقط عن إجابة نعم / لا ثنائية على ما إذا كان الكمبيوتر يستجيب أم لا، يمكنك دائمًا استخدام معلمة Quiet
. السلسلة الشائعة التي أستخدمها دائمًا لرؤية بسرعة ما إذا كان الخادم متصلًا أم لا هي استخدام Quiet
و Count
بقيمة 1 لإرسال طلب ICMP واحد فقط باستخدام Test-Connection
.
هذا كل شيء ليومنا في أداة cmdlet! لقد غطينا معظم ما هو ممكن مع اختبار الاتصال بـ Powershell ولكن، كالعادة، تحقق من محتوى مساعدة Powershell أو انتقل إلى وثائق Microsoft للحصول على فهم كامل.
Source:
https://adamtheautomator.com/powershell-test-connection/