3/11/52

เทคนิคการใช้ sed

รวมเทคนิคการใช้คำสั่ง sed ครับ
-----------------------
การแทนคำ
ถ้าเราจะ
แทนคำ foo เป็น bar ตัวแรกที่เจอในบรรทัด
$ sed -e 's/foo/bar/' myfile.txt

ถ้าเราจะ
แทนคำ foo เป็น bar ทุกตัวในบรรทัดเดียวกัน
$ sed -e 's/foo/bar/g' myfile.txt

ถ้าเราต้องการ
แทนคำ enchantment เป็น entrapment ทุกตัวในบรรทัดเดียวกัน ตั้งแต่บรรทัดที่ 1-10
$ sed -e '1,10s/enchantment/entrapment/g' myfile.txt

ถ้าเราจะ
จะสลับคำว่า 'hills' กับคำว่า 'mountains' เฉพาะ text ที่เริ่มต้นด้วย blank และ
สิ้นสุดด้วยคำที่เริ่มต้น 'END'

$ sed -e '/^$/,/^END/s/hills/mountains/g' myfile.txt

ในตัวอย่างก่อนหน้าเราจะใช้ '/' เป็นตัวแบ่ง option แต่ถ้าใน argument เรามี '/' อยู่ เราต้อง
เปลี่ยน '/' ใหม่ เป็น ':' โดยกำหนดไว้หลัง 's'

$ sed -e 's:/url/local:/usr:g' myfile.txt

ถ้าเราจะค้นหาคำที่เริ่มด้วย '<' สิ้นสุดด้วย '>' และมีตัวอักษรอยู่ข้างใน คำเหล่านี้จะถูกลบทิ้ง จะใช้แบบนี้
$ sed -e 's/<.*>//g' myfile.txt

ในบบแรกเราต้องการลบแท็คของ html ออกให้เหลือแต่ประโยคข้างใน เช่น
This is what I meant
แต่เรากลับได้ แบบนี้แทน
meant
ซึ่งไม่ใช่ที่เราต้องการ เพราะเราต้องการแบบนี้
This is what I menat
เราจะใช้แบบนี้คับ
$ sed -e 's/<[^>]*>//g' myfile.txt


-----------------------

ไม่มีความคิดเห็น:

แสดงความคิดเห็น