Search and Replace string in Linux

ห่างหายการเขียนบล็อคไปเกือบครึ่งปี เหตุเกิดมาจากติดเกมงอมแงม ในโพสต์นี้จะนำเสนอทริคเล็กๆ น้อยๆ ในการ search และ replace string ลักษณการใช้งานจะเป็นอย่างนี้ครับ

find . -name "*.type" -exec sed -i 's/old/new/g' {} ;

ใช้คำสั่ง find เพื่อค้นหาไฟล์ที่มีนามสกุลตามที่ต้องการ (Regex) หลังจากนั้นให้ทำคำสั่ง (exec) sed เพื่อ search และ replace string ในไฟล์ที่โดนค้นหาครับ ({})

เช่น ผมมีไฟล์ SQL อยู่หลายๆ ไฟล์ ผมต้องการจะเปลี่ยนคำว่า MyISAM ในไฟล์ SQL ทั้งหมดนี้ ให้เปลี่ยนเป็น InnoDB จะใช้ดังตัวอย่างนี้ครับ

file /tmp -name "*.sql" -exec sed -i 's/MyISAM/InnoDB/g' {} ;
ball Written by:

Teerapat Khunpech Live, Tech, Beers, Bike, Cafe Racer, Docker, Devops, Eco-System