sed - ما هو الفرق بين السيد و awk؟




(2)

  • ما هو الفرق بين awk و sed؟
  • ما هو نوع التطبيق أفضل حالات الاستخدام لأدوات sed و awk؟

1) ما هو الفرق بين awk و sed؟

كلاهما أدوات تحول النص. ولكن awk يمكن أن تفعل المزيد من الأشياء بالإضافة إلى مجرد التلاعب بالنص. انها لغة برمجة في حد ذاتها مع معظم الأشياء التي تتعلمها في البرمجة ، مثل المصفوفات ، الحلقات ، إذا كان التحكم في التدفق / غير ذلك ، يمكنك "برمجة" في sed أيضًا ، ولكنك لن ترغب في الحفاظ على الرمز المكتوب فيه .

2) ما هو نوع التطبيق أفضل حالات الاستخدام لأدوات sed و awk؟

الخلاصة: استخدم sed لتحليل النص بسيط للغاية. أي شيء أبعد من ذلك ، awk هو أفضل. في الواقع ، يمكنك التخلص من سيد تماما ومجرد استخدام awk. بما أن وظائفهم تتداخل و awk يمكن أن تفعل المزيد ، فقط استخدم awk. سوف تقلل من منحنى التعلم الخاص بك أيضا.


تهدف كلتا الأداتين إلى العمل مع النص وهناك مهام يمكن استخدام كلتا الأداتين لها.

بالنسبة لي ، القاعدة لفصلها هي: استخدم sed لأتمتة المهام التي ستقوم بها بطريقة أخرى في محرر النصوص يدويًا. هذا هو السبب في أنه يطلق عليه محرر تيار. (يمكنك استخدام نفس الأوامر لتحرير النص في vim). استخدم awk إذا كنت تريد تحليل النص ، بمعنى حساب الحقول ، حساب إجماليات ، استخراج وإعادة تنظيم الهياكل إلخ.

أيضا يجب أن لا ننسى عن grep . استخدم grep إذا كنت تريد فقط البحث / استخراج شيء ما في النص (ملف)