หน้า: [1]   ลงล่าง
  พิมพ์  
ผู้เขียน หัวข้อ: คำสั่ง และการใช้งานโปรแกรม VI - Editor  (อ่าน 10998 ครั้ง)
0 สมาชิก และ 4 บุคคลทั่วไป กำลังดูหัวข้อนี้
art_krab26®
สมาชิกร้านอินเตอร์เน็ตรุ่นพี่
สมาชิกเว็บ
****
ออฟไลน์ ออฟไลน์

เพศ: ชาย
กระทู้: 1,034



« เมื่อ: มีนาคม 14, 2009, 06:39:59 AM »

ในระบบยูนิกซ์ทั่วไปจะต้องมีเครื่องมือสำหรับเอาไว้ตกแต่งแก้ไขไฟล์เอกสารประจำไว้อยู่ตัวหนึ่ง ซึ่งก็คือ vi (อ่านว่า วี-ไอ) ในตอนเริ่มแรกของการใช้งาน vi แทบทุกคนจะบอกว่า การใช้งานและการทำความเข้าใจนั้นยากกว่า Editor ที่เป็นพวก Pulldown Menu Driven บนดอส เช่นพวก เวิร์ดจุฬาฯ หรือ Q-Editor มาก (ในยูนิกซ์จะเป็นพวก Emacs หรือ pico)

        แต่หากคุณพยายามฝึกฝนใช้งานไปสักพักหนึ่งแล้ว คุณจะรู้สึกว่า vi เป็น Editor ที่มีการใช้งานได้อย่างมีประสิทธิภาพมากที่สุดตัวหนึ่ง และคุณสมบัติต่างๆ ของ vi ที่มีมาให้ก็จะสามารถทำให้คุณใช้งาน vi ได้อย่างสะดวกสบายมากขึ้น นอกจากนี้การที่คุณใช้งาน vi เป็น จะทำให้คุณได้เปรียบ กว่าการใช้งาน Editor ตัว อื่นๆ เพราะ vi เป็น Editor พื้นฐานที่จะต้องมีประจำไว้กับยูนิกซ์ทุกตัวอยู่แล้ว ในขณะที่ Editor ตัวอื่นๆคุณอาจหาไม่พบใน ยูนิกซ์รุ่นอื่นๆก็ได้..

วิธีการใช้งานอย่างคร่าวๆ

vi จะมีรูปแบบการใช้งาน (mode) อยู่สามแบบคือ
Command mode
Insert mode
Last line mode

Command mode
        จะเป็นโหมดปกติตอนเริ่มต้น vi ในโหมดนี้คุณสามารถจะทำการเคลื่อนย้ายเคอร์เซอร์ ลบข้อความ สำเนาข้อความ และทำงานอื่นๆได้ การทำงานใน mode นี้จะเป็นการเคลื่อนย้ายเคอเซอร์ไปยังตำแหน่งที่ต้องการ หากย้ายไปตำแหน่งที่ไม่มีข้อมูล มันจะส่งเสียงเตือน ตัวอักษรที่ใช้ใน mode นี้ที่สำคัญได้แก่

              h                   เลื่อน cursor ไปทางซ้ายทีละตัวอักษร
              j                    เลื่อน cursor ลง 1 บรรทัด
              k                    เลื่อน cursor ขึ้น 1 บรรทัด
              l (แอล)           เลื่อน cursor ไปทางฃวาทีละตัวอักษร
             w                    เลื่อน cursor ไปทางฃวาทีละคำ
             b                     เลื่อน cursor ไปทางซ้ายทีละคำ
             $                     เลื่อน cursor ไปท้ายบรรทัด
             0 (ศูนย์)           เลื่อน cursor ไปต้นบรรทัด
            nG                    ไปยังบรรทัดที่ n หากไม่ใส่ n จะไปบรรทัดสุดท้าย
           Ctrl+f                  เลื่อนหน้าจอไปข้างหน้า (เลื่อนลง) ทีละหน้า
           Ctrl+b                 เลื่อนหน้าจอถอยหลัง (เลื่อนขึ้น) ทีละหน้า
           Ctrl+d                 เลื่อนหน้าจอไปข้างหน้า (เลื่อนลง) ทีละครึ่งหน้าจอ
           Ctrl+u                 เลื่อนหน้าจอถอยหลัง (เลื่อนขึ้น) ทีละครึ่งหน้าจอ
           Ctrl+L                 Refresh หน้าจอ
           [[                       ไปยังต้นไฟล์
           ]]                        ไปยังท้ายไฟล์
          yy Copy                 ข้อความทั้งบรรทัด
          yw Copy                ข้อความทั้งคำ
          yG Copy                ถึงท้ายไฟล์
         y$ Copy                 ถึงท้ายบรรทัด
         p (เล็ก)                  Paste หลัง cursor
         P (ใหญ่)                 Paste หน้า cursor
         cw                        พิมพ์ทับทีละ word
          c$                        พิมพ์ทับจนถึงท้ายบรรทัด
          cG                         พิมพ์ทับจนถึงท้ายไฟล์
r พิมพ์ทับทีละ 1 ตัว
R พิมพ์ทับจนกว่าจะกด Esc
u Undo การกระทำครั้งล่าสุด
x (เล็ก) ลบตรง cursor
X (ใหญ่) ลบหน้า cursor
dw ลบคำ
dd ลบทั้งบรรทัด
d$ ลบจากตำแหน่ง cursor จนท้ายบรรทัด
d0 (ดีศูนย์) ลบจากตำแหน่ง cursor จนต้นบรรทัด
dG ลบจากตำแหน่ง cursor จนท้ายไฟล์
Insert mode
        ในโหมดนี้เป็นโหมดที่ทำให้คุณสามารถทำการแก้ไขข้อความหรือพิมพ์ข้อความลงไปได้ คุณสามารถเปลี่ยนจาก Command mode เข้ามาอยู่ใน Insert mode ได้โดยการกดปุ่ม " i " หรือปุ่มอื่นๆ ที่ใช้ได้ (ดูด้านล่าง) และคุณก็จะสามารถพิมพ์ข้อความต่างๆ ได้ และเมื่อคุณต้องการจะกลับไปยัง Command mode อีกที คุณก็สามารถทำได้โดยการ กดปุ่ม " Esc " ตัวอักษรที่ใช้ใน mode นี้ที่สำคัญได้แก่

Key ความหมาย / ผลการใช้
a  เพิ่มข้อมูลต่อจาก cursor
A เพิ่มข้อมูลต่อจากท้ายบรรทัด 
i เพิ่มข้อมูลหน้า cursor
I (ไอใหญ่) เพิ่มข้อมูลที่ต้นบรรทัด
o (โอเล็ก) แทรกบรรทัดด้านล่าง cursor
O (โอใหญ่) แทรกบรรทัดด้านบน cursor
 



Last line mode
        จะเป็นโหมดที่อนุญาตให้คุณสามารถ ใช้คำสั่งเพิ่มเติมของ vi ได้ โดยคุณจะต้องกดปุ่ม " : " (โค-ลอน) ซึ่ง vi จะแสดงเป็นพร้อมต์ รอรับคำสั่งอยู่ด้านล่างสุด ของจอภาพ คุณสามารถทำการสั่งโดยการพิมพ์คำว่า " wq " แล้วกด Enter เพื่อทำการบันทึกข้อความลงไฟล์ แล้วออกจากโปรแกรม vi เป็นต้น นอกจากนี้ยังมี คำสั่งอื่นๆ อีก ดังนี้..

Key ความหมาย / ผลการใช้
:q ออกจากโปรแกรม
:w บันทึก
:wq บันทึกแล้วออกจากโปรแกรม
:w! filename บันทึกไฟล์ทับ filename
:e! filename open filename
:/string ค้นหาข้อความที่ต้องการ โดย string คือข้อความที่ต้องการ
:help ดูคำสั่งต่างๆ
:set nu แสดงหมายเลขบรรทัด
:set nonu ไม่แสดงหมายเลขบรรทัด
:set window=20  กำหนดขนาดหน้าต่างของ vi กรณีนี้กำหนดเป็น 20 บรรทัด
:set all  ตรวจสอบค่าของ option หลังคำสั่ง set ทั้งหมดที่มีอยู่
 
 


การเริ่มใช้งาน vi
คุณสามารถเริ่มต้นการใช้งาน vi ได้โดยใช้คำสั่ง

vi (filename)

โดยที่ filename คือชื่อไฟล์ที่คุณต้องการจะบันทึกข้อความ ตัวอย่างเช่น

vi lab2a.c

จะเป็นการสร้างไฟล์ที่ชื่อ lab2a.c ขึ้นมา แต่หากมีไฟล์นี้อยู่แล้วก็จะทำการอ่านข้อความที่มีอยู่ในไฟล์นี้ขึ้นมา ในตัวอย่างนี้เราจะถือว่าเป็นการสร้างไฟล์ใหม่ขึ้นมา และสำหรับในระบบ Unix นี้คุณสามารถสร้างไฟล์ ที่ไม่มีนามสกุลได้เช่น

vi out_test

ก็จะได้ไฟล์ชื่อว่า out_test


การคอมไพล์

เมื่อคุณเขียนโปรแกรมใน vi แล้วต้องการดูผลของโปรแกรมก็สามารถ คอมไพล์ ได้โดยการใช้คำสั่ง

gcc -o File Source

โดย File หมายถึงชื่อไฟล์ที่คุณต้องการหลังจากคอมไพล์แล้ว ส่วน Source ก็คือไฟล์ .c ที่เขียนไว้ ... หลังจากใช้คำสั่งนี้แล้ว คุณจะได้ไฟล์ เพิ่มมา ลองดูตัวอย่าง

gcc -o program lab2a.c

ตัวอย่างนี้ คุณจะได้ไฟล์ program* เพิ่มขึ้นมา และคุณสามารถรันโปรแกรมที่ได้มานี้โดยการพิมพ์ว่า

./program (จุด + สแลซ + ชื่อไฟล์)


ที่มา  : sood - teen .com
บันทึกการเข้า

ลายเซ็นต์ไม่สวย  อิอิ
THE-HUNTER
สมาชิกเว็บ
****
ออฟไลน์ ออฟไลน์

กระทู้: 859



« ตอบ #1 เมื่อ: มีนาคม 15, 2009, 01:53:45 PM »

มีวิตามินมากครับ
 Grin Grin
บันทึกการเข้า
หน้า: [1]   ขึ้นบน
  พิมพ์  
 
กระโดดไป:  






ติดต่อโฆษณา สำหรับบริษัท หรือท่านใดที่ต้องการทำกิจกรรมร่วมกับเว็บไซต์ ICT.in.th ติดต่อได้ที่ ictnetcafe@gmail.com

ข้อความ หรือรูปภาพที่ปรากฏในเว็บไซต์แห่งนี้ เกิดจากการเขียนโดยสาธารณชน และถูกส่งขึ้นโดยอัตโนมัติจากบุคคลทั่วไป ซึ่งทาง ICT.in.th มิได้มีส่วนร่วมรู้เห็น ตรวจสอบ หรือพิสูจน์ข้อเท็จจริงใดๆ ทั้งสิ้น ผู้อ่านจึงควรใช้วิจารณญาณในการรับข่าวสารข้อมูล หากท่านพบเห็นข้อมูลที่ไม่เหมาะสม กรุณาแจ้งให้ทีมงานทราบ เพื่อดำเนินการต่อไป