للحصول على السلسلة النصية الدقيقة من الملف باستخدام سكريبت باورشيل، يمكنك استخدام الدالة Select-String
بدلاً من Where-Object
. هذه الدالة تستخدم للبحث عن نص دقيق في ملف.
فيما يلي كيفية تعديل السكريبت ليسترجع النص الدقيق:
powershell$variable = '[email protected]' $test = $variable.split('@')[0]; $regex = "\b" + [regex]::Escape($test) + "\b" Get-Content C:\Temp\file1.txt | Select-String -Pattern $regex
هذا السكريبت يقوم بإنشاء نمط تعبير منتظم (Regex) يحتوي على الكلمة الدقيقة التي تم تقسيمها من $test
، ثم يستخدم Select-String
للبحث عن هذا النمط في الملف واسترجاع الأسطر التي تحتوي على الكلمة الدقيقة.
أتمنى أن يكون هذا الحل مفيداً لك!
المزيد من المعلومات
بالطبع! في السكريبت السابق، نستخدم الدالة Select-String
للبحث عن نمط تعبير منتظم يحتوي على الكلمة الدقيقة التي نريد البحث عنها في الملف. هذا النمط يتم إنشاؤه باستخدام \b
التي تعني حدود الكلمة في Regex، و Escape
لتجنب مشاكل النصوص المحتوية على أحرف خاصة. بعد ذلك، يقوم السكريبت بطباعة الأسطر التي تحتوي على الكلمة الدقيقة.