افحص ملف .env سطرًا بسطر كما يقرؤه dotenv، وحوّله إلى JSON أو YAML
يعمل في متصفحك. لا يُرسل أي شيء تكتبه إلى أي مكان. تم التحقق في 16 أكتوبر 2026.يحتوي ملف .env على KEY=value واحد في كل سطر، ويقرؤه الحزمة dotenv والأدوات المشابهة. تبدأ العلامة # تعليقًا حتى داخل قيمة بلا علامات اقتباس، لذا يُقرأ PASSWORD=abc#123 على أنه abc. تحافظ علامات الاقتباس على المسافات وعلامات #، وتحوّل علامات الاقتباس المزدوجة \n إلى سطر جديد، وعندما يظهر المفتاح مرتين تُعتمد القيمة الأخيرة.
تُرجمت هذه الصفحة آليًا من الأصل الإنجليزي. لم يراجع أي شخص هذه الترجمة بعد، لذا فالنسخة الإنجليزية هي التي يُعتمد عليها. اقرأ الأصل الإنجليزي
الصق ملف .env في اللوحة اليسرى، أو انقر على فتح ملف.
اقرأ المشكلات أسفلها: تذكر كل مشكلة سطرها، وينقل السطر N المؤشر إليه.
اختر صيغة، JSON أو YAML أو Shell export أو ملف env لـ Docker أو .env.example، لترى المتغيرات بعد التحويل.
انقر على نسخ، أو على تنزيل لحفظ الملف المحوَّل.
يبدو ملف .env بسيطًا، لكن الهفوات الصغيرة تغيّر ما يتلقاه البرنامج دون أي خطأ: علامة # داخل كلمة مرور تقطعها، وعلامة اقتباس غير مغلقة تصبح جزءًا من القيمة، وسطر ثانٍ بالمفتاح نفسه يحل محل الأول بصمت. تقرأ هذه الأداة الملف تمامًا كما تقرؤه الحزمة dotenv وتعرض كل سطر من هذا النوع.
ما الذي يُفحص، مع رقم السطر لكل حالة:
| المشكلة | مثال | ما يحدث |
|---|---|---|
| ليس إسنادًا | just some text |
يُتجاهل |
| # في قيمة بلا علامات اقتباس | PASS=abc#123 |
يُقرأ على أنه abc |
| علامة اقتباس غير مغلقة | NAME="Asha |
تحتفظ القيمة بعلامة الاقتباس |
| مفتاح مكرر | PORT مرتين |
يُعتمد الأخير |
| اسم ترفضه الصدفة (shell) | feature.flags=on |
يفشل source .env |
| مرجع غير معرَّف | ${REDIS_HOST} |
يبقى كما كُتب |
| مسافات بلا علامات اقتباس | FROM=Example Team |
يتعطل في الصدفة |
الأخطاء هي أسطر يتجاهلها dotenv أو يقرؤها خطأً؛ والتحذيرات تعمل في dotenv لكن ليس في الصدفة أو Docker أو Compose؛ أما الملاحظات، مثل القيمة الفارغة، فهي للعلم فقط.
التحويلات. يمكن نسخ المتغيرات، كما يقرؤها dotenv، أو تنزيلها بـ 5 صيغ: كائن JSON؛ وYAML مع إبقاء كل قيمة سلسلة نصية حتى لا يُعاد تفسير 0123 وtrue؛ وأسطر export للصدفة بعلامات اقتباس مفردة آمنة؛ وملف env لـ Docker، وهو لا يقبل القيم متعددة الأسطر؛ و.env.example يضم كل مفتاح دون قيم، جاهزًا للإيداع (commit).
تُطابَق القراءة مع dotenv نفسه على 401 ملف اختبار، بما فيها المفاتيح متعددة الأسطر ونهايات الأسطر CRLF وكل أنماط علامات الاقتباس. لا يُوسَّع أي شيء: يبقى ${OTHER} كما كُتب، كما في dotenv العادي.
يبقى الملف في ذاكرة متصفحك فقط. لا يُرفع أبدًا ولا يُخزَّن، ويختفي عند إغلاق الصفحة، لذا يمكنك لصق أسرار حقيقية بأمان.
في ملف .env تبدأ العلامة # تعليقًا، حتى في منتصف قيمة بلا علامات اقتباس، لذا يُقرأ PASSWORD=abc#123 على أنه abc. ضع القيمة بين علامتي اقتباس، PASSWORD="abc#123" أو PASSWORD='abc#123'، فيُحفظ النص كاملًا. يُشار هنا إلى كل سطر فيه هذه المشكلة مع رقمه.
نعم. يزيل dotenv المسافات من الطرفين لكنه يحتفظ بالمسافات الداخلية، لذا يعمل NAME=Example Team. لكن الصدفة التي تنفذ source .env ستتعطل عند المسافة، ويحتفظ Docker بكل شيء حرفيًا. أما وضع القيم التي تحتوي على مسافات بين علامتي اقتباس، NAME="Example Team"، فيعمل بالطريقة نفسها في dotenv وCompose والصدفات.
ضع القيمة بين علامتي اقتباس مزدوجتين، ثم إما أن تكسر الأسطر فعليًا أو تكتب \n في موضع كل فاصل. يقرأ dotenv الطريقتين، ولا يحوّل \n إلى سطر جديد إلا داخل علامات الاقتباس المزدوجة. تمتد علامات الاقتباس المفردة وعلامات backtick أيضًا عبر عدة أسطر لكنها تُبقي \n كما كُتب. أما ملف env لـ Docker فلا يقبل القيم متعددة الأسطر إطلاقًا.
تُعتمد القيمة الأخيرة دون أي تحذير من dotenv، لذا قد يُستبدل PORT المعرَّف في الأعلى بصمت بـ PORT آخر في الأسفل. تعرض هذه الأداة كل تكرار مع سطر التعريف الأول، لتتمكن من حذف الذي لا ينبغي أن يكون موجودًا.
ليس بواسطة dotenv نفسه: يبقى API=${HOST}/api تمامًا كما كُتب. أما Docker Compose والحزمة dotenv-expand فيستبدلان ${HOST} بقيمته، ويوفر ${HOST:-fallback} قيمة افتراضية عندما لا يكون HOST معيَّنًا. يُشار هنا إلى المراجع لأسماء لا يعرّفها الملف أبدًا، لأنها تصبح فارغة في تلك الأدوات.
نعم. يقرأ الملفَ كودٌ يعمل في متصفحك أنت؛ لا يُرفع شيء ولا يُسجَّل ولا يُخزَّن، ويختفي الملف عند إغلاق الصفحة أو إعادة تحميلها. وبخلاف صيغة الإخراج التي تُحفظ، لا يُحفظ النص الذي تلصقه أبدًا، ولا حتى في مساحة تخزين متصفحك.
تتغير المعدلات والقواعد؛ راجع المصدر قبل الاعتماد على أي رقم.
هل ما زلت عالقًا؟ اسأل عن مدقق ملفات .env ويمكن لأي شخص يعرف الإجابة أن يجيب. لا حاجة إلى حساب.