حذف خطوط من ملف باستخدام Sed

الأداة المساعدة Unix توفر SED طريقة فعالة ومتعددة الاستخدامات لحذف سطر واحد أو أكثر من ملف معين لمطابقة احتياجات المستخدم.

يتم استخدام هذا الأمر Unix لمعالجة سطر الأوامر . يمكن استخدام هذه الأداة المساعدة لحذف التعبيرات من ملف يمكن تحديده بواسطة محدد محدد (مثل فاصلة أو علامة تبويب أو مسافة) أو عن طريق رقم السطر أو عن طريق البحث عن سلسلة أو تعبير أو عنوان سطر في بناء جملة سيد.

Sed: حذف خطوط أو أكثر من ملف

فيما يلي كيفية إزالة سطر واحد أو أكثر من ملف.

بناء الجملة

 sed '[/] d'

sed '{[/] [،] [/] d'

/.../ = المحددات

ن = رقم الخط

سلسلة = سلسلة موجودة في السطر

رجإكس = تعبير منتظم مطابق للنمط الذي تم البحث عنه

addr = عنوان السطر (رقم أو نمط)

د = حذف

أمثلة من السيد

فيما يلي بعض الأمثلة عن كيفية استخدام بناء الجملة أعلاه.

استخدم الكود التالي لإزالة السطر الثالث:

 sed '3d' fileName.txt 

قم بإزالة السطر الذي يحتوي على السلسلة "awk" باستخدام:

 sed '/ awk / d' filename.txt 

يمكنك إزالة السطر الأخير عن طريق كتابة:

 sed '$ d' filename.txt 

أو إزالة جميع الخطوط الفارغة من خلال:

 sed '/ ^ $ / d' filename.txt

sed '/./!d' filename.txt

قم بإزالة مطابقة الخط بواسطة تعبير عادي (عن طريق إزالة حرف يحتوي على أحرف رقمية ، على الأقل رقم واحد ، موجود في نهاية السطر):

 sed '/ [0-9 /] [0-9] * $ / d' filename.txt 

قم بإزالة الفاصل الزمني بين السطور 7 و 9:

 sed '7،9d' filename.txt 

نفس العملية المذكورة أعلاه ولكن مع استبدال العنوان بالمعلمات:

 sed '/ -Start /، / - End / d' filename.txt 

يتم تغيير الأمثلة المذكورة أعلاه فقط عند عرض الملف (stdout1 = الشاشة).

للتغييرات الدائمة على الإصدارات القديمة (<4) ، استخدم ملفًا مؤقتًا لجنو سيد باستخدام "-i [لاحقة]" :

 sed -i ".bak" '3d' filename.txt 
المقال السابق المقالة القادمة

نصائح الأعلى