كيفية البحث في ملفات PDF من خلال Terminal مع أداة pdfgrep

تعتبر أدوات سطر الأوامر مثل grep و ack-grep مميزة في البحث عن ملفات نص عادي لأنماط تطابق تعبير عادي ومحدد. ولكن هل سبق لك أن حاولت استخدام هذه المرافق للبحث عن أنماط في ملف PDF؟ حسنا، لا! لن تحصل على أي نتيجة لأن هذه الأدوات لا يمكنها البحث في ملفات PDF. فهم يقرأون ملفات النصوص العادية فقط.

كيفية البحث في ملفات PDF من خلال Terminal مع أداة pdfgrep - لينكس

pdfgrep، كما يوحي اسمها، هي أداة سطر الأوامر الصغيرة التي تجعل من الممكن البحث عن النص في ملف PDF دون فتح الملف. فعملية البحث سريعة بجنون – أسرع من عملية البحث المقدمة من قبل جميع قارئي ملفات PDF تقريبا. وهناك تمييز كبير بين grep و pdfgrep هو أن pdfgrep يعمل على الصفحات، في حين أن grep يعمل على السطور. كما أنه يطبع سطر واحد عدة مرات إذا تم العثور على أكثر من جملة على هذا الخط. دعونا ننظر في كيفية استخدام الأداة بالضبط.

التركيب

لأوبونتو وغيرها من توزيعات لينكس على أساس أوبونتو، فإنها بسيطة جدا:

sudo apt install pdfgrep

لتوزيعات الأخرى، من خلال مجرد توفير pdfgrep كمدخل لمدير الحزمة، والتي يجب الحصول عليها وتثبيتها. يمكنك أيضا التحقق من صفحة المشروع في GitLab، في حال كنت تريد أن تلعب حولها مع التعليمات البرمجية.

تشغيل الاختبار

الآن بعد تثبيت الأداة، دعنا نذهب لتشغيل الاختبار. يأخذ الأمر pdfgrep هذا الشكل:

pdfgrep [OPTION...] PATTERN [FILE...]
  • OPTION عبارة عن قائمة من السمات الإضافية لإعطاء الأمر مثل -i أو -ignore-case، والتي تتجاهل كل من حالة التمييز بين النمط العادي المحدد ومرة أين تم مطابقتها في الملف.
  • PATTERN هو مجرد التعبير العادي الموسع.
  • FILE هو مجرد اسم الملف، إذا كان في نفس دليل العمل، أو المسار إلى الملف.

قمت بتشغيل الأمر على الوثائق الرسمية لـ Python 3.6. الصورة التالية هي النتيجة.

كيفية البحث في ملفات PDF من خلال Terminal مع أداة pdfgrep - لينكس

يشير الخط الأحمر إلى جميع الأماكن التي ظهرت فيه كلمة “queue”. تمرير -i كخيار للأمر للكلمات التي تشمل كلمة “Queue”. تذكر، لا يهم القضية عندما يتم تمرير -i كخيار.

إضافات

pdfgrep لديه عدد كبير من الخيارات المثيرة للاهتمام للاستخدام. ومع ذلك، سوف تغطي سوى عدد قليل هنا.

-c أو –count: هذا يلغي الانتاج العادي للمباريات. بدلا من عرض إخراج طويل من المباريات، فإنه يعرض فقط قيمة تمثل عدد المرات التي واجهت الكلمة في الملف
-p أو –page-count: يقوم هذا الخيار بطباعة أرقام الصفحات للمطابقات وعدد مرات حدوث النمط على الصفحة
-m أو –max-count [رقم]: يحدد الحد الأقصى لعدد التطابقات. وهذا يعني عندما يتم التوصل إلى عدد من المباريات، يتوقف الأمر قراءة الملف.

قائمة كاملة من الخيارات المعتمدة يمكن العثور عليها في صفحات الرجل أو في دليل pdfgrep على الانترنت. لا ننسى أن pdfgrep يمكنه البحث في ملفات متعددة في نفس الوقت، في حال كنت تعمل مع بعض الملفات السائبة. يمكن تغيير لون تمييز الألوان الافتراضي بتغيير متغير البيئة GREP_COLORS.

الخلاصة

في المرة القادمة التي تفكر فيها في فتح ملف PDF للبحث عن أي شيء. يمكنك التفكير في استخدام pdfgrep. الأداة تأتي في متناول اليدين، وسوف توفر لك الوقت.

المصدر
زر الذهاب إلى الأعلى