تحليل الطلب
في هذا السياق، يتعين علينا استخدام أداة البحث والاستبدال sed لتحقيق الهدف المحدد. يتم تحديد مجموعة من المهام التي يجب تنفيذها، مثل البحث والاستبدال بنص معين (‘google’ بـ ‘facebook’) في نطاق معين من الأسطر (من السطر 19 إلى السطر 33)، وعرض الناتج في محطة الطرفية دون تعديل الملف الأصلي.
الحل
يمكن تحقيق هذه المهام باستخدام الأمر التالي:
bashsed -n '19,33 s/google/facebook/p' URL.txt
في هذا الأمر:
-n
: يعمل على قمع طباعة كل الأسطر إلى أن يتم طلب طباعة خاصة.19,33
: يحدد النطاق من السطر 19 إلى السطر 33.s/google/facebook/p
: تقوم هذه الفقرة بالبحث عن ‘google’ واستبداله بـ ‘facebook’، وتُطبع النتائج فقط للأسطر التي يتم تغييرها.
باستخدام هذا الأمر، سترى النتائج المطلوبة على محطة الطرفية دون تعديل الملف الأصلي. يمكنك تكرار هذا الأمر مع الملف الذي تريد تنفيذ البحث والاستبدال فيه (URL.txt في هذا الحال).
المزيد من المعلومات
تأتي أداة sed
بفعالية في تحرير النصوص في الطرفية، حيث يمكنك استخدامها لإجراء مجموعة متنوعة من العمليات على الملفات النصية. سأقدم لك مزيدًا من المعلومات حول بعض الخصائص والخيارات التي يمكنك استخدامها مع sed
:
-
الخيار
-i
(in-place):
يمكنك استخدام خيار-i
معsed
لتعديل الملف مباشرة دون الحاجة إلى إعادة توجيه النتائج إلى ملف جديد. ومع ذلك، يجب أخذ الحيطة لأن هذا يؤدي إلى تعديل الملف الأصلي بدون إنشاء نسخة احتياطية.bashsed -i '19,33 s/google/facebook/' URL.txt
-
البحث بحسب النص بشكل كامل:
في حالة البحث عن نص كامل بدلاً من نص جزئي، يمكنك تحديد النص بين علامات قوسين مائلين (slashes)/
.bashsed -n '19,33 s/\/google\//facebook/p' URL.txt
-
الاستبدال في جميع الأسطر:
إذا كنت ترغب في استبدال النص في جميع الأسطر، يمكنك ترك النطاق بدون تحديده.bashsed 's/google/facebook/' URL.txt
أو باستخدام الخيار
-i
:bashsed -i 's/google/facebook/' URL.txt
يمكنك استخدام هذه الخيارات والتعديلات حسب احتياجاتك الخاصة. تذكر دائمًا أهمية عمل نسخة احتياطية من الملف قبل إجراء تغييرات باستخدام -i
لتجنب فقدان البيانات في حالة حدوث خطأ.