Theme
Primary Color

فهم حالات خروج diff عند مقارنة ملفين

الخروج غير الصفري لا يعني دائما خطأ تشغيل لأن بعض الأدوات تستخدمه للتعبير عن اختلاف البيانات

نفذ المثال بإستخدام Bash داخل مجلد تدريب جديد تملكه على GNU/Linux والأوامر لا تحتاج sudo

المثال العملي

printf 'Version A\n' > before.txt
printf 'Version B\n' > after.txt
if diff -q before.txt after.txt > /dev/null; then
  printf 'Same\n'
else
  status=$?
  printf 'Diff Exit: %s\n' "$status"
fi

النتيجة

Diff Exit: 1

القيمة 1 معناها وجود اختلاف والقيمة 2 تعني مشكلة في المقارنة مثل عدم القدرة على قراءة ملف

جرب بنفسك

اجعل المحتوى متطابق ثم جرب مسار غير موجود ولاحظ الفرق بين الحالتين

linux شرح