แก่
การคัดลอกและตัดแปะบรรทัด
-
ทำการคัดลอกบรรทัดข้อความลงในหน่วยความจำโดยเลื่อนเคอร์เซอร์ไปยังบรรทัดที่ต้อง
การแล้วกดปุ่ม 'yy' (กดปุ่ม 'y' สองครั้งติดกัน)
-
ทำการแปะติดข้อความที่ได้คัดลอกจากหน่วยความจำลงไปยังเอกสาร โดยเลื่อนเคอร์เซอร์
ไปยังบรรทัดที่ต้องการแล้วกด 'p' vi จะทำการแปะติดข้อความลงไปในเอกสารให้ในบรรทัด
ถัดไป หากต้องการแปะติดข้อความยังบรรทัดก่อนหน้าจะต้องกดปุ่ม 'P' (กด shift พร้อม
กับ 'p')
-
เราสามารถทำการคัดลอกข้อความมากกว่าหนึ่งบรรทัดได้ โดยการพิมพ์จำนวนบรรทัดที่ต้อง
การจะทำการคัดลอกก่อนหน้าจะกดปุ่ม 'yy' ตัวอย่างเช่นจะทำการคัดลอกบรรทัดจำนวน 10
บรรทัด ให้กด '10yy' vi จะทำการคัดลอกบรรทัดจำนวน 10 บรรทัดนับจากบรรทัดที่ตรงกับ
ตำแหน่งเคอร์เซอร์เป็นต้นไป
-
คุณสามารถทำการย้ายข้อความได้เช่นกัน ให้ทำการกดปุ่ม 'dd' ที่บรรทัดตำแหน่งที่
คุณต้องการจะทำการย้ายข้อความ vi จะทำการลบบรรทัดให้ (แต่ยังเก็บไว้ในหน่วยความจำ
อยู่) แล้วให้ย้ายเคอร์เซอร์ไปยังตำแหน่งที่ต้องการจะนำข้อความไปไว้แล้วกดปุ่ม 'p'
vi จะนำบรรทัดที่ได้ลบไปนั้นย้ายมาไว้ให้
การยกเลิกคำสั่งหรือการทำ undo
หากเราทำการลบหรือแก้ไขข้อความผิดพลาด และต้องการจะยกเลิกการลบหรือแก้ไขข้อความนั้น
คุณสามารถจะทำได้โดยการกดปุ่ม 'u' เพื่อทำการยกเลิกการทำงานใน vi ครั้งล่าสุด
การค้นหาและแทนที่คำในเอกสาร
-
เราสามารถทำการค้นหาคำในเอกสารได้โดยการกดปุ่ม '/' ซึ่ง vi จะทำการแสดงเครื่อง
หมาย '/' ที่บรรทัดล่างสุด ซึ่งแสดงว่า vi กำลังรอรับคำที่เราต้องการค้นหา ให้ทำการ
พิมพ์ข้อความที่ต้องการค้นหาลงไป แล้วกดปุ่ม Enter เพื่อเริ่มทำการค้นหาข้อความ หาก
vi พบข้อความที่เราต้องการหา เคอร์เซอร์จะถูกย้ายไปอยู่ที่ตำแหน่งของคำที่หาพบนั้น
แต่ถ้าหากหาไม่พบ vi จะแจ้งให้ทราบว่าไม่สามารถทำการค้นหาข้อความที่ต้องการได้
(Pattern not found)
เมื่อค้นหาคำเจอแล้วหากต้องการทำการค้นหาคำเดิมซ้ำอีก ให้ทำการกดปุ่ม 'n' vi จะทำ
การค้นหาคำที่ต้องการต่อจากตำแหน่งที่เจอล่าสุด และหากต้องการค้นหาคำในตำแหน่งย้อน
กลับ ให้ทำการกดปุ่ม 'N' (กด shift พร้อมกับปุ่ม 'n')
-
การแทนที่เอกสารสามารถทำได้ในโหมดคอมมานด์ไลน์ของ vi โดยกดปุ่ม ':' เพื่อเข้า
สู่โหมดคอมมานด์ไลน์ จะสังเกตุเห็นเครื่องหมาย ':' ถูกแสดงที่บรรทัดล่างสุด แล้ว
พิมพ์คำสั่งในรูปแบบต่อไปนี้
:s/oldtext/newtext/
จากคำสั่งข้างต้น vi จะทำการเปลี่ยนคำว่า 'oldtext' ในบรรทัดที่ตำแหน่งเคอร์เซอร์
อยู่ เป็นคำว่า 'newtext'
หากต้องการจะเปลี่ยนมากกว่า 1 บรรทัด ให้ทำการระบุตำแหน่งบรรทัดที่ ต้องการจะ
เปลี่ยน โดยมีรูปแบบดังนี้
:50,100s/oldtext/newtext/g
จะทำการเปลี่ยนคำว่า 'oldtext' เป็น 'newtext' จากบรรทัดที่ 50 ถึงบรรทัดที่ 100
หากต้องการเปลี่ยนหมดทั้งไฟล์เอกสาร คำสั่งข้างล่างจะทำการเปลี่ยนคำว่า 'oldtext'
เป็น 'newtext' หมดทั้งไฟล์เอกสาร
:%s/oldtext/newtext/g
การเคลื่อนย้ายเคอร์เซอร์ในบรรทัด
-
การเคลื่อนย้ายเคอร์เซอร์ไปในตำแหน่งต้นบรรทัด ให้กดปุ่ม '^'
ถ้าต้องการย้ายเคอร์เซอร์ไปท้ายบรรทัด ให้กดปุ่ม '$'
-
การย้ายเคอร์เซอร์ไปมาระหว่างคำ ถ้าหากเป็นการเลื่อนเคอร์เซอร์ไปข้างหน้า จะให้
ปุ่ม 'w' แต่ถ้าหากเป็นการเลื่อนเคอร์เซอร์ย้อนกลับจะต้องใช้ปุ่ม 'b' วิธีนี้จะทำ
ให้เคอร์เซอร์กระโดดข้ามไปมาระหว่างคำ แต่ถ้าหากเจออักษรพิเศษเช่น วงเล็บ '()'
หรือเครื่องหมายเท่ากับ '=' ก็จะถือว่าเป็นคำด้วย
-
หากต้องการจะย้ายเคอร์เซอร์ไปมาระหว่างคำ โดยไม่สนใจว่าตัวอักษรพิเศษอื่นๆมีรูป
แบบเป็นคำด้วย จะต้องใช้ 'W' และ 'B' กล่าวคือการแบ่งว่าเป็นคำหรือไม่จะดูว่ามี
ช่องว่าง (blank) คั่นอยู่หรือไม่เท่านั้น
-
การหาคำในบรรทัด สามารถทำได้โดยกดปุ่ม 'f' และพิมพ์คำที่ต้องการค้นหาในบรรทัด
ถ้าหากมีคำที่ต้องการหาอยู่ในบรรทัด เคอร์เซอร์จะกระโดดไปตำแหน่งที่พบคำๆนั้น
การเรียกคำสั่งของลีนุกซ์จาก vi
หากคุณต้องการจะเรียกใช้คำสั่งของลีนุกซ์จากใน vi คุณจะต้องเปลี่ยนไปใช้คอมมานด์
โหมดด้วยการกดปุ่ม ':' เสียก่อน จากนั้นให้พิมพ์ตัวอักษร '!' เพื่อบอก vi ว่ากำลัง
จะเรียกใช้ คำสั่งของลีนุกซ์ แล้วให้พิมพ์คำสั่งของลีนุกซ์ที่คุณต้องการลงไปแล้วกด
ปุ่ม Enter vi จะสลับมาทำคำสั่งของลีนุกซ์ที่คุณพิมพ์เข้าไปให้ ตัวอย่าง
:!ls
จะไปทำคำสั่งของลีนุกซ์ 'ls' คือการแสดงรายชื่อของไฟล์ในไดเรกทอรีปัจจุบันออกมา
ดังนั้นหากต้องการออกไปที่เชลล์ของลีนุกซ์ ก็สามารถใช้คำสั่งได้ดังนี้
:!bash
จะออกไปที่เชลล์และเราสามารถทำการใช้งานคำสั่งของลีนุกซ์อื่นๆได้ตามปกติ หากต้อง
กลับเข้ามาที่ vi ตามเดิม ให้พิมพ์คำสั่ง 'exit'
นอกจากการเรียกใช้คำสั่งของลีนุกซ์แล้ว เรายังสามารถนำเอาผลลัพธ์ที่ได้จากคำสั่งของ
ลีนุกซ์มาเป็นส่วนหนึ่งของเอกสารได้ โดยต้องทำการพิมพ์ตัวอักษร '.' ก่อนหน้าอักษร
'!' และชุดคำสั่งของลีนุกซ์ ตัวอย่าง
:.!pwd
จะทำการพิมพ์ชื่อของไดเรกทอรีปัจจุบัน ที่ตำแหน่งของเคอร์เซอร์ออกมาให้
HTML developed by Kaiwal Development Team (kaiwal@geocities.com)