المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : شرح طريقة امر sed لعمل بحث واستبدال لكلمة داخل ملف



linnou
11-02-2013, بتوقيت غرينيتش 01:47 AM
شرح طريقة امر sed :
امر sed هو أمر مسئول عن عمل بحث واستبدال لقيمة تحددها داخل ملف

فمثلا نفترض ان عندنا ملف باسم kholief.txt يحتوى على القيم الاتية :
رمز Code:
root@host [~]# cat kholief.txt kholief is my name kholief is ahmed kholief ahmed kholief is egyptian
نريد مثلا ان نقوم بالبحث داخل الملف عن كلمة kholief وتعديلها الى كلمة dzbatna


ازاى نعمل المطلوب دا مع افتراض ان الملف دا فيه مليووووووووون سطر يحتوى على كلمة kholief ؟؟


هنا بتيجى اهمية الامر sed :
===============
الصيغة الافتراضية للامر
رمز Code:
sed -i 's/old/new/g' file
-i وظيفتها انها تقوم بعمل حفظ للملف بعد تعديلة .
g فى اخر الامر وظيفتها انها تقوم بعمل استبدال للكلمة المراد اسبتدالها فى جميع انحاء السطر سواء كانت الكلمة فى اول او منتصف او اخر السطر .
file اسم الملف المراد اجراء التعديل علية

دعونا نطبق على المثال بتعنا وهو اسبتدال كلمة kholief بكلمة dzbatna داخل ملف kholief.txt وحفظة بعد التعديل
سيكون الامر بالشكل التالى :
رمز Code:
sed -i 's/kholief/dzbatna/g' kholief.txt
تعالوا نشوف شكل الملف بعد اجراء الامر علية :



رمز Code:
root@host [~]# cat kholief.txt dzbatna is my name dzbatna is ahmed dzbatna ahmed dzbatna is egyptian
لاحظ ان لو مضفناش g فى اخر السطر هيقوم بتعديل الكلمة فى السطر فيما عدا اخر جزء من السطر
فمثلا لو عملنا :
رمز Code:
sed -i 's/kholief/dzbatna/' kholief.txt وجيت تشوف الملف بعدها : root@host [~]# cat kholief.txt dzbatna is my name dzbatna is ahmed kholief ahmed dzbatna is egyptian

لاحظ السطر التانى من الملف لم يجرى الاسبتدال على كلمة kholief فى اخر السطر لاننا لم نضف g الى الامر ...

دا شرح طريقة مبسط للامر , وانت تقدر توظفة لخدمتك فى شغلك زى ما تحب

مثلا غيرت ايبى السيرفر SERVER الرئيسيى او الفى بى اس وعايز تنفذ الاوامر من الشل
رمز Code:
sed -i 's/oldip/newip/g' /etc/hosts sed -i 's/oldip/newip/g' /etc/wwwacct.conf sed -i 's/oldip/newip/g' /etc/nameserverips sed -i 's/oldip/newip/g' /var/named/*.db sed -i 's/oldip/newip/g' /var/cpanel/users/*

مع تغيير oldip بالايبى القديم و newip بالايبى الجديد المراد تعديلة

فيه استخدامات كتير للامر وان شاء الله هشرح طريقة بعد كدا ازاى نعمل اجراء بحث وتعديل على كلمات تحتوى على رموز # او & او " او ' ... الخ

اتمنى ان الامر دا يكون عجبكم وتقدروا تستفيدوا بيه فى شغلكم على الشل ..

بالتوووووووووووفيق ..




https://fbcdn-sphotos-d-a.akamaihd.net/hphotos-ak-ash4/482113_236967293114455_1193518507_n.png (http://www.dzbatna.com)
©المشاركات المنشورة تعبر عن وجهة نظر صاحبها فقط، ولا تُعبّر بأي شكل من الأشكال عن وجهة نظر إدارة المنتدى (http://www.dzbatna.com)©

استعمل مربع البحث في الاسفل لمزيد من المواضيع


سريع للبحث عن مواضيع في المنتدى