ForHosting KIT · أدوات المطورين

إزالة رموز الهروب ANSI من نصوص الطرفية والسجلات

تحتوي مخرجات الطرفية غالبًا على تسلسلات تحكم ANSI غير مرئية تضيف الألوان والخط العريض وحركة المؤشر وعناوين النوافذ وغيرها من مؤثرات العرض.

● Betaمجاني · داخل متصفحك
استخدمها من الويبAPIالبريدTelegramالتطبيق قريبًا

تفيد هذه التعليمات داخل الصدفة التفاعلية، لكنها تتحول إلى محارف مزعجة عند نسخ السجلات إلى التذاكر أو التقارير أو فهارس البحث أو مجموعات البيانات. تزيل هذه الأداة رموز ANSI الخاصة بالألوان والتنسيق مع الحفاظ على الرسالة الفعلية والمسافات وفواصل الأسطر. يمكنكم لصق المخرجات لتنظيفها سريعًا في المتصفح، أو إرسالها عبر API عندما تكون تسوية النص جزءًا من سير عمل آلي.

حوّلوا مخرجات الطرفية المنسقة إلى نص واضح ومفيد

تكتشف برامج سطر الأوامر الطرفية في كثير من الأحيان وتزين مخرجاتها بالألوان أو التوكيد أو أوامر المؤشر أو الروابط أو تعليمات ضبط العنوان. تفسر الشاشة هذه البايتات، ولذلك ترون رسالة حالة مرتبة بدلًا من صيغة التحكم الكامنة. تبدأ المشكلة عندما يعاد توجيه المخرجات نفسها، أو تنسخ من نظام بناء، أو تحفظ في قاعدة بيانات، أو تلصق في طلب دعم. فقد تظهر تسلسلات الهروب على هيئة أجزاء محاطة بأقواس، وتعطل البحث، وتضخم الفروق، وتجعل المعالجة الآلية أقل موثوقية. تفحص هذه الأداة النص المرسل وتحذف تسلسلات تحكم ANSI المعروفة، مع إبقاء محارف Unicode العادية والمسافات وبنية الأسطر. وهي تعالج ألوان SGR وأوامر CSI وسلاسل OSC وأشكال التحكم الطرفية المرتبطة بها. يصبح الناتج صالحًا للقراءة والنسخ والفهرسة والمقارنة أو الإرسال إلى محلل لاحق، من دون اختلاط تعليمات العرض بالمحتوى الفعلي.

كيفية معالجة الماسح الحتمي لتسلسلات الهروب

يقرأ المنظف النص مرة واحدة من بدايته إلى نهايته. وعندما يعثر على بادئة ESC أو عنصر تحكم C1 مكافئ مكون من بايت واحد، فإنه يتحقق من نطاقات البايت المحددة لصيغة التحكم الطرفية ويستهلك التسلسل كاملًا. تتعرف الأداة إلى أوامر CSI من خلال بايتات المعاملات والبايتات الوسيطة والنهائية، فتغطي تغيير الألوان وإعادة الضبط ومسح الأسطر وحركة المؤشر من دون قائمة هشة للأوامر المفردة. وتحذف عناصر التحكم النصية مثل OSC وDCS وSOS وPM وAPC حتى BEL أو String Terminator؛ وإذا غاب المنهي، يعد ما تبقى حتى نهاية الإدخال بيانات تحكم. ينسخ النص العادي كما هو، بما في ذلك الرموز التعبيرية والكتابات غير اللاتينية وعلامات الجدولة والعودة وفواصل الأسطر. ويبين الرد عدد التسلسلات المحذوفة وما إذا حدث تغيير. لا تحاكي الأداة شاشة طرفية، بل تزيل التعليمات وتحافظ على ترتيب المحارف الظاهرة.

استخدموا المخرجات النظيفة بأمان في السجلات والأتمتة

استخدموا هذه الإمكانية فور التقاط مخرجات عملية قد تفرض الألوان أو التنسيق، ولا سيما عندما يتعذر ضبط العملية لإخراج نص عادي. يمكن تمرير القيمة المنظفة إلى مجمع سجلات أو فهرس بحث نصي أو تقرير حادثة أو اختبار لقطة أو إشعار أو خطوة استخراج منظمة. ولأن الخوارزمية حتمية، فإن الإدخال نفسه ينتج دائمًا المخرجات نفسها، وهذا مهم لعناصر البناء ومقارنات الانحدار. لا تجري الأداة طلبات شبكة، ولا تنفذ النص المرسل، ولا تفسر أوامر الصدفة الواردة فيه. تذكروا أن إزالة ANSI هي عملية تسوية وليست تعقيمًا أمنيًا لكل وجهة؛ إذ تتطلب سياقات HTML وSQL وCSV والصدفة أساليب الهروب الخاصة بها. وقد تستبدل تطبيقات الطرفية الأسطر بعلامة العودة أو الحذف الخلفي، وهذه المحارف العادية تبقى لأنها ليست تسلسلات هروب ANSI. إذا احتجتم إلى سجل يعيد بناء موضع المؤشر، فاستخدموا محاكي طرفية أولًا. أما السجلات الملونة المعتادة، فتبقى كلماتها وبنيتها مع زوال ضوضاء العرض.

تنظيف سجلات التكامل المستمر

أزيلوا أوامر الألوان والمؤشر قبل إرفاق مخرجات البناء بتذكرة أو تقرير أو أرشيف قابل للبحث.

تثبيت مقارنات اللقطات

سوّوا المخرجات المزخرفة كي تقارن الاختبارات محتوى الرسالة بدلًا من تنسيق الطرفية المتغير باختلاف البيئة.

إعداد السجلات لمعالجة النصوص

مرروا نصًا واضحًا إلى البحث أو التصنيف أو التحليل أو التنبيهات من دون تلويث الحقول والرموز بتعليمات ANSI.

ما الذي تزيله الأداة؟

تزيل تسلسلات هروب ANSI المستخدمة للألوان وسمات النص وعناصر تحكم المؤشر وأوامر الطرفية والروابط وسلاسل التحكم.

هل تحافظ على فواصل الأسطر ونص Unicode؟

نعم. تبقى المحارف العادية، ومنها Unicode وعلامات الجدولة والعودة وفواصل الأسطر، بترتيبها الأصلي.

هل تعرض حركة المؤشر قبل التنظيف؟

لا. تزيل الأداة تعليمات الطرفية، لكنها لا تحاكي الشاشة ولا تعيد ترتيب المحارف وفق حركة المؤشر.

ماذا يحدث لسلسلة OSC غير المنتهية أو لتحكم مشابه؟

يحذف التسلسل وكل ما يلي بادئته، لأنه لا يمكن تمييز المحتوى المتبقي بأمان من حمولة التحكم.

هل يمكنني استخدام الناتج مباشرة بوصفه HTML أو أمر صدفة؟

لا تفترضوا ذلك. لا تغني إزالة ANSI عن الهروب أو التحقق المخصصين للوجهة.

ما تكلفة طلب API؟

تبلغ تكلفة كل طلب API مقدار $0.002. ويمكن تشغيل المنظف الحتمي نفسه في متصفحكم أيضًا.

كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.

POSThttps://api.kit.forhosting.com/str/remove-ansi

صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.

curl -X POST https://api.kit.forhosting.com/str/remove-ansi \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"\u001b[32mBuild passed\u001b[0m\n\u001b[1;33m2 warnings\u001b[0m"}'
{
  "text": "\u001b[32mBuild passed\u001b[0m\n\u001b[1;33m2 warnings\u001b[0m"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "str.remove_ansi",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.

لكل طلب$0.002

السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.

HTTPالرمزالمعنى
401unauthorizedمفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك.
402insufficient_balanceرصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة.
404unknown_typeنوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب.
429rate_limitedتجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة.

اطّلع على توثيق KIT الكامل ←