إذا وجدت نفسك تقوم بتشغيل نفس الأمر مرارًا وتكرارًا، فقد تكون هناك طريقة أفضل.

في بعض الأحيان، تحتاج إلى تشغيل أمر أو برنامج بشكل متكرر لمراقبة جوانب مختلفة من نظامك، مثل العمليات الجارية، أو استخدام مساحة القرص، أو تسجيلات دخول المستخدم. يتيح لك أمر Linux watch أتمتة هذه المهام دون الحاجة إلى تشغيلها يدويًا مرارًا وتكرارًا.

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

ما هو أمر المراقبة؟

يقوم أمر watch Linux بتشغيل أمر أو برنامج محدد بشكل متكرر، على فترات زمنية منتظمة، ويعرض مخرجاته في الوحدة الطرفية. يتيح لك هذا مراقبة التغييرات في الإخراج في الوقت الحقيقي. يقوم بتحديث الإخراج عند كل فاصل زمني، والكتابة فوق إخراج الأمر السابق. افتراضيًا، يتكرر الأمر كل ثانيتين ويستمر حتى تقوم بإيقاف استخدامه يدويًا السيطرة + ج.

شاهد بناء جملة الأوامر

بناء جملة أمر المراقبة هو:

watch options 

هناك العديد من خيارات سطر الأوامر المتاحة للاستخدام مع أمر المراقبة. إذا قمت بتشغيل أمر المراقبة بدون أي خيارات، فسيتم تشغيل الأمر المحدد بعد كل ثانيتين. على سبيل المثال، سيُظهر لك ما يلي مخرجات الأمر ls:

instagram viewer

watch ls -l ~/

سيُظهر لك الإخراج التغييرات في قائمة الدليل إذا تم إنشاء ملف أو حذفه أو تغيير حجمه، مع تحديث الإخراج كل ثانيتين.

قم بتشغيل أمر كل X ثانية باستخدام الساعة

يمكنك تغيير الفاصل الزمني لتحديث أمر المراقبة. هذا يعني أنه يمكنك إخبار أمر الساعة بالانتظار لمدة x ثانية قبل تكرار الأمر. لتغيير الفاصل الزمني للتحديث، استخدم الخيار متبوعًا بالفاصل الزمني بالثواني.

watch -n 

على سبيل المثال، لتشغيل أمر بعد كل 5 ثوانٍ، قم بتشغيل:

watch -n 5 

تسليط الضوء على التغييرات بين التحديثات

يقوم أمر المراقبة بالكتابة فوق مخرجاته عند كل تحديث. باستخدام الخيار، يمكنك أيضًا تسليط الضوء على التغييرات بين الإخراج السابق والمحدث.

watch -d

افتراضيًا، يعرض أمر المراقبة رأسًا أعلى كل مخرجات تحتوي على الفاصل الزمني للتحديث، واسم الأمر، والتاريخ والوقت الحاليين للنظام. يمكنك تجريد الرأس من الإخراج باستخدام خيار:

watch -t 

تشغيل أصوات التنبيه عند حدوث خطأ

عند انتهاء عملية Linux، يقوم بإرجاع رمز الخروج. وفقًا للاتفاقية، تكون القيمة 0 عند النجاح وليست صفرًا لتمثل خطأ. أمر المراقبة يقوم الخيار بتشغيل صوت تنبيه إذا قام الأمر بإرجاع مخرج غير الصفر.

لنفترض أنك تريد مراقبة sshd.service والحصول على إشعار عند توقف الخدمة؛ سوف تستخدم:

watch -b sudo systemctl status sshd.service

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

اخرج من أمر المراقبة عند تغيير الإخراج

يمكنك أيضًا إخبار أمر المراقبة بالتوقف عن التشغيل والخروج عندما يتغير مخرج الأمر. يمكنك القيام بذلك باستخدام خيار. يعد هذا الخيار مفيدًا جدًا في السيناريوهات عندما تنتظر تغييرات معينة في الإخراج.

بمجرد تغيير الإخراج، سيتوقف أمر المراقبة. يمكنك دمج هذا الاستخدام مع أمر الصدى لعرض رسالة على الشاشة.

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

watch -g "ls -l | grep filename" && echo "file arrived"

مثال مفيد آخر هو الإشعار عندما يقوم مستخدم معين بتسجيل الدخول إلى نظامك:

watch -g "who | grep username" && echo "username logged in"

سيقوم هذا الأمر بمراقبة إخراج الملف من الذي يسرد المستخدمين الذين قاموا بتسجيل الدخول. بمجرد قيام المستخدم بتسجيل الدخول، سيتوقف أمر المراقبة ويعرض رسالة على الجهاز.

وبالمثل، يمكنك إخبار أمر المراقبة بإيقاف الخدمة عند إجراء بعض التغييرات في الملف. ضع في اعتبارك أنه عند استخدام سلسلة من الأوامر، ستحتاج إلى إحاطة الأمر بأكمله بين علامتي اقتباس.

شاهد الأنشطة في نظام Linux الخاص بك

إذا وجدت نفسك تقوم بنفس العملية بشكل متكرر، ففكر في استخدام أمر المراقبة لتشغيلها تلقائيًا. إنه يوفر عليك كتابة الأوامر بشكل متكرر لمعرفة ما تغير.

يمكنك أيضًا استخدام أمر المراقبة مع أوامر Linux الأخرى لمراقبة موارد النظام وأنشطته، وتتبع التغييرات في الملفات أو الأدلة.