طالب علم نشر 15 أبريل 2015 أرسل تقرير نشر 15 أبريل 2015 (معدل) كيف يمكنني فقط استخراج عناوين IP من ملفات الـ Log ووضعها في ملف آخر منفصل؟ تم التعديل في 25 يونيو 2015 بواسطة عبد الهادي اطويل تعديل العنوان اقتباس
2 محمد أحمد العيل نشر 16 أبريل 2015 أرسل تقرير نشر 16 أبريل 2015 هذا يعتمد على نوعيّة وهيئة السّجلّات Logs الّتي تُريد استخراج عناوين IP منها.مثلا في سجلّاّت Apache يوجد عنوان IP في العمود الأوّل من كل سطر ضمن ملفّ السّجلّ. في هذه الحالة يُمكن استخراج عنوان IP عن طريق الأمر التّالي:cut -d ' ' -f 1 logFile > ips.txtيُستخدم أمر cut لاستخراج جزء من أسطر في ملف نصّي.الخيّار d- يُحدّد الفاصل بين الأعمدة، أي أنّ الأمر عندما يجد مسافة سيعتبر ما بعدها عمودا جديدًا.الخيّار f- يعني الحقل (العمود) أو الحقول التي نُريد الاحتفاظ بها من الملفّ. في حالة سجلّات Apache يوجد عنوان IP في العمود الأوّل، لذا نُحدّد الرّقم 1.logFile هو اسم الملّف الّي نُريد استخراج العناوين منه.نحتفظ بنتيجة تنفيذ الأمر في ملفّ باسم ips.txt يُمكن أيضًا استخدام grep وتعبير نمطي Regex لاستخراج عنوان IP كما يلي:grep -oE '.*([0-9]{1,3}[\.]){3}[0-9]{1,3}*'الخيّار o- لاستبقاء جزء السّطر الّذي يُوافق التّعبير النمطي فقط.توجد ملحوظة في الطّريقة الأخيرة. عادة يوجد إصدارُ المتصفّح في السجلّات، إن كان رقم الإصدار مكوَّنًا من 4 خانات فسيظهر محتوى السّطر الموجود بين عنوان IP ورقم إصدار البرنامج في النّتيجة. يُمكِن التّغلب على هذا الأمر باستبقاء أول مطابقة للتّعبير النمطي فقط في كلّ سطر، ولكن في هذه الحالة من الأفضل استخدام cut (على كلّ حال استخدامُ cut يستغل موارد أقلّ من الجهاز).مثال على الملحوظة الأخيرة (سطر من سجلّ Apache لديّ في المدوَّنة )197.241.75.122 - - [31/Mar/2015:10:49:02 -0600] "GET /2013/03/%D8%B1%D8%B3%D8%A7%D9%84%D8%A9-%D8%AE%D8%B7%D8%A3-grub-error-no-such-partition-grub-rescue/ HTTP/1.1" 304 174 "https://www.google.com/" "Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) MxNitro/1.0.0.300 في آخر السّطر يوجد رقم إصدار مكوِّن في متصفّح المستخدِم (MxNitro/1.0.0.300). صيغة هذا الرّقم تُوافق هيئة عنوان IP ولكنّه ليس عنوان IP. 1 اقتباس
السؤال
طالب علم
كيف يمكنني فقط استخراج عناوين IP من ملفات الـ Log ووضعها في ملف آخر منفصل؟
تم التعديل في بواسطة عبد الهادي اطويلتعديل العنوان
1 جواب على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.