ค้นหาเว็บไซต์

ซีรี่ส์ RHCSA: การแก้ไขไฟล์ข้อความด้วย Nano และ Vim/การวิเคราะห์ข้อความด้วย grep และ regexps - ตอนที่ 4


ผู้ดูแลระบบทุกคนต้องจัดการกับไฟล์ข้อความซึ่งเป็นส่วนหนึ่งของความรับผิดชอบประจำวัน ซึ่งรวมถึงการแก้ไขไฟล์ที่มีอยู่ (น่าจะเป็นไฟล์การกำหนดค่า) หรือการสร้างไฟล์ใหม่ ว่ากันว่าถ้าคุณต้องการเริ่มสงครามศักดิ์สิทธิ์ในโลก Linux คุณสามารถถามผู้ดูแลระบบว่าโปรแกรมแก้ไขข้อความที่พวกเขาชื่นชอบคืออะไรและเพราะเหตุใด เราจะไม่ทำเช่นนั้นในบทความนี้ แต่จะนำเสนอเคล็ดลับเล็กๆ น้อยๆ ที่จะเป็นประโยชน์ในการใช้โปรแกรมแก้ไขข้อความสองตัวที่ใช้กันอย่างแพร่หลายใน RHEL 7: นาโน (เนื่องจากความเรียบง่ายและสะดวก โดยเฉพาะสำหรับผู้ใช้ใหม่) และ vi/m (เนื่องจากคุณสมบัติหลายอย่างที่แปลงเป็นมากกว่าโปรแกรมแก้ไขธรรมดา) ฉันมั่นใจว่าคุณจะพบเหตุผลอื่นๆ อีกมากมายที่จะใช้อย่างใดอย่างหนึ่ง หรือบางทีอาจเป็นโปรแกรมแก้ไขอื่นๆ เช่น emacs หรือ pico มันขึ้นอยู่กับคุณทั้งหมด

การแก้ไขไฟล์ด้วย Nano Editor

หากต้องการเปิดใช้งาน nano คุณสามารถพิมพ์ nano ที่พรอมต์คำสั่ง หรือจะตามด้วย ชื่อไฟล์ (ในกรณีนี้ หากมีไฟล์อยู่) จะถูกเปิดในโหมดฉบับ) หากไม่มีไฟล์อยู่หรือถ้าเราละชื่อไฟล์ nano จะถูกเปิดในโหมด edition ด้วย แต่จะแสดงหน้าจอว่างให้เราเริ่มพิมพ์:

ดังที่คุณเห็นในภาพก่อนหน้า นาโน จะแสดงที่ด้านล่างของหน้าจอหลายฟังก์ชันที่ใช้งานได้ผ่านทางลัดที่ระบุ (^ หรือที่รู้จักในชื่อคาเร็ต บ่งชี้ว่า ^ >ปุ่ม Ctrl) เพื่อบอกชื่อบางส่วน:

  1. Ctrl + G: เรียกเมนูวิธีใช้พร้อมรายการฟังก์ชันและคำอธิบายทั้งหมด:Ctrl + X: ออกจากไฟล์ปัจจุบัน หากไม่ได้บันทึกการเปลี่ยนแปลง การเปลี่ยนแปลงเหล่านั้นจะถูกละทิ้ง
  2. Ctrl + R: ช่วยให้คุณสามารถเลือกไฟล์ที่จะแทรกเนื้อหาลงในไฟล์ปัจจุบันโดยการระบุเส้นทางแบบเต็ม

  1. Ctrl + O: บันทึกการเปลี่ยนแปลงที่ทำกับไฟล์ มันจะช่วยให้คุณบันทึกไฟล์ด้วยชื่อเดียวกันหรือชื่ออื่น จากนั้นกด Enter เพื่อยืนยัน

  1. Ctrl + X: ออกจากไฟล์ปัจจุบัน หากไม่ได้บันทึกการเปลี่ยนแปลง การเปลี่ยนแปลงเหล่านั้นจะถูกละทิ้ง
  2. Ctrl + R: ช่วยให้คุณสามารถเลือกไฟล์ที่จะแทรกเนื้อหาลงในไฟล์ปัจจุบันโดยการระบุเส้นทางแบบเต็ม

จะแทรกเนื้อหาของ /etc/passwd ลงในไฟล์ปัจจุบัน

  1. Ctrl + K: ตัดบรรทัดปัจจุบัน
  2. Ctrl + U: วาง
  3. Ctrl + C: ยกเลิกการทำงานปัจจุบันและนำคุณไปที่หน้าจอก่อนหน้า

เพื่อให้นำทางไฟล์ที่เปิดได้อย่างง่ายดาย nano มีคุณสมบัติดังต่อไปนี้:

  1. Ctrl + F และ Ctrl + B เลื่อนเคอร์เซอร์ไปข้างหน้าหรือข้างหลัง ในขณะที่ Ctrl + P และ Ctrl + N เลื่อนขึ้นหรือลงทีละบรรทัด ตามลำดับ เช่นเดียวกับปุ่มลูกศร
  2. Ctrl + space และ Alt + space เลื่อนเคอร์เซอร์ไปข้างหน้าและข้างหลังทีละคำ

ในที่สุด,

  1. Ctrl + _ (ขีดล่าง) จากนั้นป้อน X,Y จะนำคุณไปยังบรรทัด X คอลัมน์ Y อย่างแน่นอน หากคุณต้องการวางเคอร์เซอร์ที่ตำแหน่งเฉพาะในเอกสาร

ตัวอย่างด้านบนจะนำคุณไปที่ บรรทัด 15, คอลัมน์ 14 ในเอกสารปัจจุบัน

หากคุณจำสมัย Linux ในยุคแรกๆ ได้ โดยเฉพาะถ้าคุณมาจาก Windows คุณอาจยอมรับว่าการเริ่มต้นด้วยนาโนเป็นวิธีที่ดีที่สุดสำหรับผู้ใช้ใหม่

การแก้ไขไฟล์ด้วย Vim Editor

Vim เป็นเวอร์ชันปรับปรุงของ vi ซึ่งเป็นโปรแกรมแก้ไขข้อความที่มีชื่อเสียงใน Linux ที่มีอยู่ในระบบ *nix ที่สอดคล้องกับ POSIX ทั้งหมด เช่น RHEL 7 หากคุณมีโอกาส และสามารถติดตั้งเป็นกลุ่มได้เลย หากไม่เป็นเช่นนั้น เคล็ดลับส่วนใหญ่ (หากไม่ใช่ทั้งหมด) ที่ให้ไว้ในบทความนี้ก็ควรใช้ได้เช่นกัน

คุณสมบัติที่โดดเด่นอย่างหนึ่งของ vim คือโหมดต่าง ๆ ที่ใช้งาน:

  1. โหมดคำสั่งจะช่วยให้คุณสามารถเรียกดูไฟล์และป้อนคำสั่ง ซึ่งเป็นการผสมตัวอักษรตั้งแต่หนึ่งตัวขึ้นไปโดยคำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ หากคุณต้องการทำซ้ำหนึ่งในนั้นตามจำนวนที่กำหนด คุณสามารถเติมตัวเลขนำหน้าได้ (มีข้อยกเว้นบางประการสำหรับกฎนี้เท่านั้น) ตัวอย่างเช่น yy (หรือ Y ย่อมาจาก yank) จะคัดลอกบรรทัดปัจจุบันทั้งหมด ในขณะที่ 4yy (หรือ 4Y) จะคัดลอกบรรทัดปัจจุบันทั้งหมดพร้อมกับสามบรรทัดถัดไป (รวมทั้งหมด 4 บรรทัด)
  2. ในโหมด ex คุณสามารถจัดการไฟล์ได้ (รวมถึงการบันทึกไฟล์ปัจจุบันและการเรียกใช้โปรแกรมหรือคำสั่งภายนอก) ในการเข้าสู่โหมด ex เราต้องพิมพ์โคลอน (:) โดยเริ่มจากโหมดคำสั่ง (หรืออีกนัยหนึ่งคือ Esc + :) ตามด้วยชื่อของคำสั่ง ex-mode ที่คุณต้องการใช้โดยตรง
  3. ในโหมดแทรก ซึ่งเข้าถึงได้โดยการพิมพ์ตัวอักษร i เราก็เพียงป้อนข้อความ การกดแป้นพิมพ์ส่วนใหญ่ส่งผลให้ข้อความปรากฏบนหน้าจอ
  4. เราสามารถเข้าสู่โหมดคำสั่งได้ตลอดเวลา (ไม่ว่าเราจะใช้งานโหมดใดก็ตาม) โดยการกดปุ่ม Esc

มาดูกันว่าเราสามารถดำเนินการแบบเดียวกับที่เราร่างไว้สำหรับ นาโน ในส่วนก่อนหน้าได้อย่างไร แต่ตอนนี้ใช้ vim อย่าลืมกดปุ่ม Enter เพื่อยืนยันคำสั่ง vim!

หากต้องการเข้าถึงคู่มือฉบับสมบูรณ์ของ vim จากบรรทัดคำสั่ง ให้พิมพ์ :help ขณะที่อยู่ในโหมดคำสั่ง จากนั้นกด Enter:

ส่วนบนแสดงรายการดัชนีเนื้อหา พร้อมส่วนที่กำหนดไว้สำหรับหัวข้อเฉพาะเกี่ยวกับ vim หากต้องการนำทางไปยังส่วนใดส่วนหนึ่ง ให้วางเคอร์เซอร์ไว้เหนือส่วนนั้นแล้วกด Ctrl + ] (ปิดวงเล็บเหลี่ยม) โปรดทราบว่าส่วนล่างจะแสดงไฟล์ปัจจุบัน

1. หากต้องการบันทึกการเปลี่ยนแปลงที่ทำกับไฟล์ ให้รันคำสั่งต่อไปนี้จากโหมดคำสั่ง จากนั้นคำสั่งจะดำเนินการ:

:wq!
:x!
ZZ (yes, double Z without the colon at the beginning)

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

3. ตัดจำนวนบรรทัด N: พิมพ์ Ndd ขณะที่อยู่ในโหมดคำสั่ง

4. คัดลอก M จำนวนบรรทัด: พิมพ์ Myy ขณะที่อยู่ในโหมดคำสั่ง

5. วางบรรทัดที่ถูกตัดหรือคัดลอกก่อนหน้านี้: กดปุ่ม P ขณะที่อยู่ในโหมดคำสั่ง

6. หากต้องการแทรกเนื้อหาของไฟล์อื่นลงในไฟล์ปัจจุบัน:

:r filename

ตัวอย่างเช่น หากต้องการแทรกเนื้อหาของ /etc/fstab ให้ทำดังนี้

7. หากต้องการแทรกผลลัพธ์ของคำสั่งลงในเอกสารปัจจุบัน:

:r! command

ตัวอย่างเช่น หากต้องการแทรกวันที่และเวลาในบรรทัดด้านล่างตำแหน่งปัจจุบันของเคอร์เซอร์:

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