VI Editor พร้อมคำสั่งในบทช่วยสอน Linux/Unix

⚡ สรุปอย่างชาญฉลาด

โปรแกรมแก้ไขข้อความ vi เป็นโปรแกรมแก้ไขข้อความแบบคลาสสิกที่มีให้ใช้งานทั่วไปในระบบ Linux และ Unix โดยทำงานผ่านแป้นพิมพ์ทั้งหมดในสองโหมด: โหมดคำสั่งสำหรับการกระทำ และโหมดแทรกสำหรับการพิมพ์ping ข้อความ

  • 📝 มันคืออะไร: โปรแกรมแก้ไขข้อความ vi มีมาให้พร้อมกับระบบปฏิบัติการ Linux และ Unix เกือบทุกระบบ และทำงานเหมือนกันในทุกแพลตฟอร์มและทุกเวอร์ชันของระบบปฏิบัติการ
  • ⌨️ สองโหมด: โหมดคำสั่งจะทำงาน เช่น คัดลอก ลบ และบันทึก ในขณะที่โหมดแทรกใช้สำหรับพิมพ์ข้อความping ข้อความ
  • 🚀 เปิดตัว: พิมพ์ vi ตามด้วยชื่อไฟล์ เพื่อเปิดไฟล์ที่มีอยู่แล้วหรือสร้างไฟล์ใหม่
  • ✏️ การแก้ไข: คำสั่งตัวอักษรเดี่ยว เช่น i, a, dd และ x ใช้สำหรับแทรก เพิ่ม ลบ และต่อท้ายบรรทัดตามลำดับ
  • 💾 ประหยัด: ในโหมดคำสั่ง: :w บันทึก, :wq บันทึกและออกจากโปรแกรม, และ :q! ออกจากโปรแกรมโดยไม่บันทึก
  • 🤖 ความช่วยเหลือจากเอไอ: ผู้ช่วย AI และ GitHub Copilot สามารถอธิบายคำสั่ง vi และแนะนำการแก้ไขขณะที่คุณเรียนรู้ได้

คำสั่งของโปรแกรมแก้ไขข้อความ vi และโหมดคำสั่งและการแทรกใน Linux และ Unix

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

โปรแกรมแก้ไขข้อความ vi คืออะไร?

โปรแกรมแก้ไขข้อความ vi เป็นโปรแกรมแก้ไขข้อความที่ได้รับความนิยมและคลาสสิกที่สุดในตระกูล Linux ด้านล่างนี้คือเหตุผลบางประการที่ทำให้มันเป็นโปรแกรมแก้ไขข้อความที่ใช้งานกันอย่างแพร่หลาย:

  • มีให้ใช้งานในระบบปฏิบัติการ Linux เกือบทุกรุ่น
  • มันทำงานได้เหมือนกันในทุกแพลตฟอร์มและการแจกจ่ายซอฟต์แวร์
  • โปรแกรมนี้ใช้งานง่าย ดังนั้นผู้ใช้ Linux หลายล้านคนจึงใช้โปรแกรมนี้ในการตัดต่อวิดีโอ

ปัจจุบันมีโปรแกรมแก้ไขข้อความ vi เวอร์ชันขั้นสูงให้เลือกใช้มากมาย และเวอร์ชันที่ได้รับความนิยมมากที่สุดคือ VIMซึ่งย่อมาจาก Vi Improved โปรแกรมแก้ไขไฟล์อื่นๆ ได้แก่ Elvis, Nvi, Nano และ Vile การเรียนรู้ vi ถือเป็นเรื่องที่ชาญฉลาด เพราะมันมีฟีเจอร์มากมายและเปิดโอกาสมากมายในการแก้ไขไฟล์

บรรณาธิการ vi Operaโหมดการทำงาน

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

โปรแกรมแก้ไขข้อความ vi จะเปิดขึ้นในหน้าต่างเทอร์มินัลของ Linux

โหมดคำสั่ง vi

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

โหมดแทรก vi

  • โหมดนี้ใช้สำหรับแทรกข้อความลงในไฟล์
  • คุณสามารถเปลี่ยนจากโหมดคำสั่งเป็นโหมดแทรกได้โดยการกดปุ่ม 'i' บนแป้นพิมพ์
  • เมื่อคุณอยู่ในโหมดแทรกแล้ว ปุ่มใดๆ ก็ตามจะถูกใช้เป็นข้อมูลป้อนเข้าสำหรับไฟล์ที่คุณกำลังใช้งานอยู่
  • หากต้องการกลับสู่โหมดคำสั่งและบันทึกการเปลี่ยนแปลง ให้กดปุ่ม Esc

วิธีใช้โปรแกรมแก้ไข vi

หากต้องการเรียกใช้โปรแกรมแก้ไขข้อความ vi ให้เปิดเทอร์มินัล (CLI) แล้วพิมพ์:

vi <filename_NEW> or <filename_EXISTING>

หากคุณระบุไฟล์ที่มีอยู่แล้ว โปรแกรมแก้ไขจะเปิดไฟล์นั้นให้คุณแก้ไข มิฉะนั้น โปรแกรมจะสร้างไฟล์ใหม่ ภาพหน้าจอด้านล่างแสดงการสร้างและแก้ไขไฟล์ใหม่ใน vi

การสร้างและแก้ไขไฟล์ใหม่ในโปรแกรมแก้ไขข้อความ vi

VI แก้ไขคำสั่ง

คำสั่งแก้ไขข้อความ vi ด้านล่างนี้ ช่วยให้คุณสามารถแทรก ลบ และเปลี่ยนแปลงข้อความได้ โปรดใช้คำสั่งเหล่านี้จากโหมดคำสั่ง

คำสั่ง Descriptไอออน
i แทรกที่เคอร์เซอร์ (เข้าสู่โหมดแทรก)
a เขียนหลังเคอร์เซอร์ (เข้าสู่โหมดแทรก)
A เขียนที่ท้ายบรรทัด (เข้าสู่โหมดแทรก)
ESC ยุติโหมดแทรก
u เลิกทำการเปลี่ยนแปลงครั้งล่าสุด
U เลิกทำการเปลี่ยนแปลงทั้งหมดกับทั้งบรรทัด
o เปิดบรรทัดใหม่ (เข้าสู่โหมดแทรก)
dd ลบบรรทัด
3dd ลบ 3 บรรทัด
D ลบเนื้อหาของบรรทัดหลังเคอร์เซอร์
C ลบเนื้อหาของบรรทัดหลังเคอร์เซอร์และแทรกข้อความใหม่ กดปุ่ม ESC เพื่อสิ้นสุดการแทรก
dw ลบคำ
4dw ลบ 4 คำ
cw เปลี่ยนคำ
x ลบอักขระที่เคอร์เซอร์
r แทนที่อักขระ
R เขียนทับอักขระจากเคอร์เซอร์เป็นต้นไป
s แทนที่อักขระหนึ่งตัวใต้เคอร์เซอร์ แล้วดำเนินการแทรกต่อไป
S แทนที่ทั้งบรรทัดและเริ่มแทรกจากต้นบรรทัด
~ เปลี่ยนกรณีของตัวละครแต่ละตัว

หมายเหตุ คุณต้องอยู่ในโหมดคำสั่งเพื่อเรียกใช้คำสั่งเหล่านี้ โปรแกรมแก้ไข vi นั้นคำนึงถึงตัวพิมพ์ใหญ่และตัวพิมพ์เล็ก ดังนั้นโปรดตรวจสอบให้แน่ใจว่าคุณพิมพ์คำสั่งด้วยตัวพิมพ์ใหญ่และตัวพิมพ์เล็กที่ถูกต้อง การกดคำสั่งผิดอาจทำให้เกิดการเปลี่ยนแปลงที่ไม่พึงประสงค์กับไฟล์ได้ คุณยังสามารถเข้าสู่โหมดแทรกได้โดยการกดปุ่ม a, A หรือ o ตามต้องการ

การย้ายภายในไฟล์

คุณต้องอยู่ในโหมดคำสั่งเพื่อเลื่อนไปมาภายในไฟล์ ปุ่มนำทางเริ่มต้นแสดงอยู่ด้านล่าง แต่คุณสามารถใช้ปุ่มลูกศรบนแป้นพิมพ์ได้เช่นกัน

คำสั่ง Descriptไอออน
k เลื่อนเคอร์เซอร์ขึ้น
j เลื่อนเคอร์เซอร์ลง
h เลื่อนเคอร์เซอร์ไปทางซ้าย
l เลื่อนเคอร์เซอร์ไปทางขวา

การบันทึกและการปิดไฟล์

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

คำสั่ง Descriptไอออน
Shift+zz บันทึกไฟล์แล้วออกจากโปรแกรม
:w บันทึกไฟล์ แต่ยังคงเปิดไฟล์นั้นไว้
Q! ปิดโปรแกรม vi และอย่าบันทึกการเปลี่ยนแปลง
: WQ บันทึกไฟล์แล้วออกจากโปรแกรม

ภาพหน้าจอด้านล่างแสดงไฟล์ที่เปิดอยู่ในโปรแกรมแก้ไข vi พร้อมที่จะบันทึกและปิด

ไฟล์เปิดอยู่ในโปรแกรมแก้ไข vi พร้อมที่จะบันทึกและปิด

คำถามที่พบบ่อย

Vim Vi Improved ย่อมาจาก “Vi Improved” และเป็นเวอร์ชันที่ได้รับการปรับปรุงของ vi โดยเพิ่มคุณสมบัติต่างๆ เช่น การเน้นไวยากรณ์ การยกเลิกและทำซ้ำหลายระดับ การแบ่งหน้าต่าง แท็บ และการเติมคำอัตโนมัติ vi เวอร์ชันคลาสสิกมีให้ใช้งานในระบบ Unix เกือบทุกระบบ ซึ่งเป็นเหตุผลว่าทำไมคำสั่งของมันจึงคุ้มค่าที่จะเรียนรู้

ในโหมดคำสั่ง ให้กด / ตามด้วยข้อความ แล้วกด Enter เพื่อค้นหาไปข้างหน้า หรือใช้ ? เพื่อค้นหาถอยหลัง กด n เพื่อไปยังผลลัพธ์ถัดไป และกด N เพื่อไปยังผลลัพธ์ก่อนหน้า การค้นหาจะคำนึงถึงตัวพิมพ์ใหญ่และตัวพิมพ์เล็ก เว้นแต่คุณจะเปลี่ยนการตั้งค่า

ในโหมดคำสั่ง yy จะคัดลอก (yank) บรรทัดปัจจุบัน และ p จะวางข้อความที่คัดลอกไว้ใต้เคอร์เซอร์ ใช้ตัวเลข เช่น 3yy เพื่อคัดลอกหลายบรรทัดพร้อมกัน การลบด้วย dd จะวางข้อความที่ลบไว้ในคลิปบอร์ดด้วย เพื่อให้ p สามารถวางข้อความนั้นในที่อื่นได้

ในโหมดคำสั่ง ให้พิมพ์ :set number (หรือ :set nu) แล้วกด Enter เพื่อแสดงหมายเลขบรรทัดที่ขอบด้านซ้าย พิมพ์ :set nonumber เพื่อซ่อนหมายเลขบรรทัดอีกครั้ง หมายเลขบรรทัดช่วยให้ข้ามไปยังบรรทัดที่ต้องการได้ง่ายขึ้น และช่วยให้ติดตามข้อความแสดงข้อผิดพลาดได้สะดวกยิ่งขึ้น

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

ใช้คำสั่ง vi -R filename หรือใช้คำสั่ง view เพื่อเปิดไฟล์ในโหมดอ่านอย่างเดียว วิธีนี้ช่วยให้คุณเรียกดูและค้นหาได้อย่างปลอดภัยโดยไม่เปลี่ยนแปลงเนื้อหาโดยไม่ตั้งใจ คุณยังสามารถบังคับบันทึกด้วยคำสั่ง :w! หากคุณต้องการบันทึกการแก้ไข

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

ใช่. นักบิน GitHub มีปลั๊กอินอย่างเป็นทางการสำหรับ Vim และ Neovim ฟังก์ชันนี้จะแนะนำโค้ดขณะที่คุณพิมพ์ในโหมดแทรก ช่วยให้การทำงานแบบใช้แป้นพิมพ์ง่ายขึ้นด้วย AI แต่คุณยังคงต้องยอมรับหรือปฏิเสธคำแนะนำแต่ละรายการด้วยตนเอง

สรุปโพสต์นี้ด้วย: