MultiTail - تصفح عدة ملفات في وقت واحد
ملخص
multitail [خيارات]
خيارات: [-cs|-Cs|-c-] [-s] [-i] ملف_الإدخال [-i ملف_إدخال_آخر] [...]
الوصف
يتيح لك البرنامج MultiTail عرض ملف واحد أو عدة ملفات مثل برنامج tail الأصلي.
الفرق هو أنه ينشئ نوافذ متعددة على وحدة التحكم الخاصة بك (باستخدام ncurses). يمكنه أيضًا مراقبة أحرف البدل: إذا كان هناك ملف آخر يطابق حرف البدل وله تاريخ تعديل أحدث، فسيقوم تلقائيًا بالتبديل إلى هذا الملف. بهذه الطريقة، يمكنك، على سبيل المثال، مراقبة دليل كامل للملفات. من الممكن دمج ملفين أو أكثر من ملفات السجل. يمكنه أيضًا استخدام الألوان أثناء عرض ملفات السجل (عبر التعبيرات النمطية)، وذلك للتعرف بسرعة على ما هو مهم وما هو غير مهم. يمكنه أيضًا تصفية الأسطر (مرة أخرى باستخدام التعبيرات النمطية). يحتوي على قوائم تفاعلية لتحرير التعبيرات النمطية المعطاة وحذف النوافذ وإضافتها. يمكن أيضًا أن يكون لديك نوافذ تحتوي على إخراج البرامج النصية والبرامج الأخرى. عند عرض إخراج البرامج الخارجية، يمكن لـ MultiTail محاكاة وظائف الأدوات مثل 'watch' وما شابه ذلك. عند وصول بريد إلكتروني جديد للمستخدم الحالي، ستصبح أشرطة الحالة باللون الأخضر. لإعادة تعيين حالة "تم استلام بريد إلكتروني"، اضغط على " " (مسافة). للحصول على مساعدة في أي وقت، اضغط على F1.
الخيارات
-i ملف
حدد ملفًا للمراقبة. يمكنك الحصول على معلمات متعددة من نوع -i ملف. لا تحتاج إلى إضافة -i ملف أمام اسم الملف إلا إذا كان اسم الملف يبدأ بشرطة ('-').
-I ملف
نفس -i ملف ولكن أضف الإخراج إلى النافذة السابقة (بحيث يتم دمج الإخراج).
-iw ملف فاصل_زمني
-Iw ملف فاصل_زمني مثل '-i'/' -I' ولكنه يتوقع أن تكون المعلمة عبارة عن حرف بدل والثانية(!) عبارة عن فاصل زمني. في البداية، سيبدأ MultiTail في مراقبة الملف الأول الذي يحتوي على أحدث وقت تعديل. في كل فاصل زمني، سيتحقق مما إذا كان قد تم إنشاء أي ملفات جديدة (أو تم تعديلها) ويبدأ في تتبعها. *لا تنسَ* وضع علامات اقتباس حول اسم الملف، وإلا فسيحاول الصدفة استبدالها!
-l أمر
الأمر المراد تنفيذه في نافذة. المعلمة هي الأمر. لا تنس استخدام علامات اقتباس إذا كان الأمر الخارجي يحتاج إلى معلمة! (على سبيل المثال، -l "ping host").
-L أمر
نفس -l ولكن أضف الإخراج إلى النافذة السابقة (بحيث يتم دمج الإخراج).
-j
اقرأ من stdin (لا يمكن استخدامه إلا مرة واحدة لأنه توجد stdin واحدة فقط).
-J
نفس -j ولكن أضف الإخراج إلى النافذة السابقة (بحيث يتم دمج الإخراج).
--mergeall
دمج جميع الملفات التالية في نفس النافذة (راجع '--no-mergeall').
--no-mergeall
إيقاف دمج جميع الملفات في نافذة واحدة (راجع '--mergeall').
--no-repeat
عند تكرار نفس السطر، سيتم قمعه مع طباعة رسالة "تم تكرار الرسالة الأخيرة x مرة".
--mark-interval x
اطبع سطر علامة كل 'x' ثانية عندما لم تتم طباعة أي شيء آخر.
-q i path
تحقق من 'path' بحثًا عن ملفات جديدة بفارق زمني قدره 'i'، وكلها في نوافذ جديدة. يمكن إدخال المسارات هنا كما يفهمها الصدفة. على سبيل المثال "/tmp/*". ملاحظة: لا تنسَ إضافة علامات الاقتباس حول اسم المسار لمنع الصدفة من تحليله!
-Q i path
مثل -q: ولكن ادمجها جميعًا في نافذة واحدة.
--new-only
بالنسبة لـ -q/-Q: قم بإنشاء نوافذ فقط للملفات التي تم إنشاؤها بعد بدء تشغيل MultiTail.
--closeidle x
أغلق النوافذ عندما لا تتم معالجة بيانات جديدة لأكثر من 'x' ثانية.
-a x اكتب الإخراج أيضًا إلى الملف 'x' (مثل 'tee') بعد أن تتم تصفيته بواسطة MultiTail. ملاحظة:
يجب عليك وضع "-a file" قبل الملف الذي تقوم بمراقبته!
-A x اكتب الإخراج أيضًا إلى الملف 'x' (مثل 'tee') قبل أن تتم تصفيته بواسطة MultiTail.
انظر أيضًا الملاحظة الخاصة بـ "-a".
-g x أرسل الإخراج أيضًا إلى الأمر 'x' بعد أن تتم تصفيته بواسطة MultiTail.
-G x أرسل الإخراج أيضًا إلى الأمر 'x' قبل أن تتم تصفيته بواسطة MultiTail.
-S أضف رقم النافذة الفرعية إلى الإخراج المدمج.
-t title
باستخدام هذا الخيار، يتم عرض "title" في شريط الحالة بدلاً من اسم الملف أو سطر الأوامر.
-n number_of_lines
عدد الأسطر التي سيتم عرضها في البداية. يعتمد الافتراضي على حجم نافذة الجهاز.
-N number_of_lines
مثل -n ولكن سيتم استخدام هذا المعامل لجميع الملفات/الأوامر التي تقوم بمراقبتها بعد هذا المعامل.
-r interval
أعد تشغيل الأمر (الذي تم تشغيله باستخدام -l/-L) بعد خروجه. باستخدام 'interval'، يمكنك تحديد المدة التي يجب أن تنتظرها قبل إعادة التشغيل.
-R interval
يعيد تشغيل أمر مثل -r، ولكن يعرض الفرق في الإخراج مقارنة بالتشغيل السابق.
-rc / -Rc interval
مثل -r / -R ولكن يمسح النافذة قبل كل تكرار.
-h المساعدة.
-f اتبع اسم الملف التالي، وليس الواصف.
--follow-all
بالنسبة لجميع الملفات بعد هذا الخيار: اتبع اسم الملف التالي، وليس الواصف.
-fr filter
استخدم المرشح (أو المرشحات) المعرف مسبقًا من ملف التكوين.
-e استخدم التعبير النمطي التالي على الملف التالي.
-ex استخدم التعبير النمطي على الملف التالي وقم بتنفيذ الأمر عند مطابقته.
يتم تمرير السطر المطابق بالكامل كمعامل سطر أوامر إلى الأمر.
-eX مثل '-ex' ولكن قم فقط بإعطاء السلسلة الفرعية المطابقة كمعامل. يتطلب هذا تعبيرًا نمطيًا مع '(' و ')'.
-ec استخدم تعبيرًا نمطيًا على الملف التالي واعرض التطابقات.
-eC استخدم تعبيرًا نمطيًا على الملف التالي ولكن اعرض كل شيء واعرض التطابقات معكوسة.
-E استخدم التعبير النمطي التالي على الملفات التالية.
-v انفي التعبير النمطي التالي.
-s x يقسم الشاشة عموديًا إلى 'x' أعمدة.
-sw x عند أي موضع يتم تقسيم الشاشة. على سبيل المثال، '-sw 20,40,,10' (=4 أعمدة)
-sn x كم عدد النوافذ لكل عمود للتقسيم الرأسي (يستخدم مع -s أو -sw). على سبيل المثال، '-sn 3,,2'.
-wh x يحدد ارتفاع النافذة (إرشادي: إذا لم يكن بالإمكان عرضها، يتم تعديل الارتفاع).
-cS scheme
اعرض الملف التالي باستخدام نظام الألوان المحدد بـ 'scheme' (كما هو محدد في ملف multitail.conf).
-CS scheme
اعرض جميع الملفات التالية باستخدام نظام الألوان المحدد بـ 'scheme' (كما هو محدد في ملف multitail.conf).
-csn مفتاح إضافي للمفاتيح التالية؛ لا تستخدم الألوان المعكوسة (المقلوبة).
-cs اعرض الملف التالي بالألوان (نظام syslog).
-c اعرض الملف التالي بالألوان.
-Cs اعرض جميع الملفات التالية بالألوان (من خلال نظام syslog).
-C اعرض جميع الملفات التالية بالألوان.
-Cf field_index delimiter
اعرض جميع الملفات التالية بالألوان بناءً على الحقل المحدد بـ field_index. يتم تحديد الحقول بواسطة المحدد المحدد.
-cf field_index delimiter
اعرض الملف التالي بالألوان بناءً على الحقل المحدد بـ field_index. يتم تحديد الحقول بواسطة المحدد المحدد.
-ci color
استخدم لونًا معينًا. مفيد عند دمج مخرجات متعددة.
-cT terminalmode
فسّر رموز المحطة الطرفية. يتم دعم ANSI فقط في الوقت الحالي.
-c- لا تقم بتلوين الملف التالي.
-C- لا تقم بتلوين الملفات التالية.
-ts أضف طابعًا زمنيًا إلى كل سطر (يمكن تهيئة التنسيق في ملف multitail.conf).
-Z color
حدد سمات الألوان لسطر العلامات.
-T سيتم وضع طابع زمني في سطر العلامات.
-d لا تقم بتحديث شريط الحالة.
-D لا تعرض شريط الحالة على الإطلاق.
-du ضع شريط الحالة أعلى نافذة البيانات.
-z لا تعرض النوافذ "المغلقة".
-u حدد فاصل التحديث للشاشة (للاتصالات البطيئة).
-m nlines
حدد حجم المخزن المؤقت. اضبط nlines على 0 (صفر) إذا كنت تريد عدم وجود حدود للمخزن المؤقت.
-mb x حدد حجم ذاكرة التخزين المؤقت (بالبايت، استخدم xKB/MB/GB).
-M nlines
حدد حجم المخزن المؤقت لجميع الملفات التالية.
-p x [y]
حدد طريقة التفاف السطر: a = اطبع كل شيء بما في ذلك التفاف السطر. l = اعرض كل شيء بدءًا من اليسار حتى الوصول إلى الجانب الأيمن من النافذة. r = اعرض كل شيء بدءًا من يمين السطر. s = اعرض كل شيء بدءًا من اسم العملية. S = اعرض كل شيء بدءًا من بعد اسم العملية. o = اعرض كل شيء بدءًا من الإزاحة 'y'.
-P x [y]
مثل -p ولكن لجميع النوافذ التالية.
-ke x قم بإزالة أجزاء من الإدخال باستخدام التعبير العادي 'x'.
-kr x y
قم بإزالة أجزاء من الإدخال بدءًا من الإزاحة x وانتهاءً (وليس بما في ذلك) الإزاحة y.
-kc x y
قم بإزالة أجزاء من الإدخال: قم بإزالة العمود 'y' باستخدام المحدد 'x'.
-ks x استخدم مخطط التحرير 'x' من ملف التكوين.
-w لا تستخدم الألوان.
-b n حدد عرض علامة التبويب.
--config filename
قم بتحميل التكوين من الملف المحدد.
-x حدد عنوان xterm: سيتم استبدال %f بالملف الذي تم تغييره مؤخرًا، و %h باسم المضيف، و %l بحمل النظام، و %m بـ "يوجد بريد جديد!" عندما يكون لدى المستخدم الحالي بريد جديد، و %u بالمستخدم الفعلي الحالي، و %t بالطابع الزمني للملف الذي تم تغييره مؤخرًا، و %% بـ %.
-o configfile-item
يعالج عنصر ملف التكوين عبر سطر الأوامر في حالة عدم إمكانية تعديل ملف التكوين الافتراضي.
--cont أعد توصيل الأسطر التي تنتهي بعلامة '´.
--mark-interval interval
عندما لا يتم استقبال أي شيء، اطبع سطر '---mark---' كل 'interval' ثانية.
--mark-change
عند دمج ملفات متعددة ويقوم Multitail بالتبديل بين نافذتين، اطبع سطر علامة باسم الملف.
--no-mark-change
لا تطبع سطر العلامة عند تغيير الملف (يلغي إعداد ملف التكوين).
--label text
ضع "text" في بداية كل سطر. مفيد عند دمج ملفات وأوامر متعددة.
--retry
استمر في محاولة فتح الملف التالي إذا كان غير متاح.
--retry-all
مثل --retry ولكن لجميع الملفات التالية.
-cv x استخدم مخطط التحويل 'x' (انظر multitail.conf).
--basename
اعرض اسم الملف فقط (وليس المسار) في شريط الحالة.
-F file
استخدم 'file' كملف تكوين (بدلاً من ملف التكوين الافتراضي).
--no-load-global-config
لا تقم بتحميل ملف التكوين العام.
--beep-interval x
اجعل الطرفية تصدر صوت تنبيه لكل سطر يتم معالجته رقم x. اضغط على 'i' في القائمة الرئيسية لمعرفة عدد مرات إصدار الصوت.
--bi x مثل '--beep-interval' ولكن للنظام الفرعي الحالي فقط. يمكن العثور على إحصائيات حول عدد الأصوات في إحصائيات هذا النظام الفرعي. اضغط على 't' في القائمة الرئيسية.
-H اعرض إشارة نبضية (للحفاظ على جلساتك نشطة).
-V اعرض الإصدار واخرج.
المفاتيح
يمكنك الضغط على بعض المفاتيح أثناء تشغيل البرنامج. لعرض قائمة بها، اضغط على F1 (أو ^h). يمكنك الضغط على F1 (أو ^h) في أي وقت: فهو يوفر معلومات ذات صلة بالسياق. اضغط على 'q' للخروج من البرنامج.
أمثلة
انظر http://www.vanheusden.com/multitail/examples.html للحصول على المزيد من الأمثلة.
multitail /var/log/apache/access_log logfile -i -filestartingwithdatsh
ينشئ هذا ثلاثة نوافذ. نافذة تحتوي على محتويات /var/log/apache/access_log، ونافذة تحتوي على محتويات logfile، وهكذا.
multitail -R 2 -l "netstat -t"
يقوم هذا بتشغيل netstat كل ثانيتين ثم يعرض ما تغير منذ التشغيل السابق. بهذه الطريقة، يمكنك رؤية الاتصالات الجديدة التي يتم إنشاؤها والاتصالات المغلقة التي تختفي.
multitail logfile -l "ping 192.168.1.3"
ينشئ هذا نافذتين. نافذة تحتوي على محتويات logfile، ونافذة تحتوي على إخراج 'ping 192.168.1.3'.
multitail /var/log/apache/access_log -I /var/log/apache/error_log
ينشئ هذا نافذة واحدة تحتوي على محتويات /var/log/apache/access_log مدمجة مع محتويات /var/log/apache/error_log.
multitail -M 0 /var/log/apache/access_log -I /var/log/apache/error_log
نفس مثال السابق. سيقوم هذا المثال بتخزين جميع الإدخالات المسجلة في ذاكرة تخزين مؤقت بحيث يمكنك تصفحها لاحقًا (بالضغط على 'b').
الملفات
${XDG_CONFIG_HOME}/multitail/config
إذا تم تعريف ${XDG_CONFIG_HOME}.
${HOME}/.multitailrc
إذا تم تعريف ${HOME}.
~/.multitailrc
عندما لا يتم تعريف ${XDG_CONFIG_HOME} ولا ${HOME}، سيتم استخدام (struct passwd*)pp->pw_dir من ملف الرأس القياسي pwd.h.
الأخطاء\nمع نمو هذا البرنامج وتضخمه بمرور الوقت وإضافة وظائف جديدة بشكل عشوائي، قد تكون هناك بعض الأخطاء. يرجى إبلاغ _ إذا وجدت أي أخطاء.\n\nحسنًا، باستثناء تغيير حجم نافذة الطرفية. قد يتعطل البرنامج عند القيام بأشياء كهذه.\n قد يساعد ترقية مكتبة ncurses إلى الإصدار 5.3 أو أحدث في هذه الحالة. انظر أيضًا http://www.vanheusden.com/multitail/ ملاحظات\nتصف هذه الصفحة برنامج MultiTail كما هو موجود في حزمة multitail المثبتة؛ قد تختلف الإصدارات الأخرى\n قليلاً. أرسل التصحيحات والإضافات إلى _. أبلغ عن الأخطاء في البرنامج إلى _.