less / more
บทนี้สอนผู้เริ่มต้นให้ใช้ `less` และ `more` เพื่ออ่านไฟล์หรือ output ที่ยาวหลายบรรทัดแบบเลื่อนอ่านทีละส่วน โดยเน้นว่าเครื่องมือนี้ใช้สำหรับดูเนื้อหา ไม่ใช่แก้ไขไฟล์ และเหมาะมากเมื่อไฟล์ยาวจน `cat` อ่านลำบาก
บทนี้สอนผู้เริ่มต้นให้ใช้ `less` และ `more` เพื่ออ่านไฟล์หรือ output ที่ยาวหลายบรรทัดแบบเลื่อนอ่านทีละส่วน โดยเน้นว่าเครื่องมือนี้ใช้สำหรับดูเนื้อหา ไม่ใช่แก้ไขไฟล์ และเหมาะมากเมื่อไฟล์ยาวจน `cat` อ่านลำบาก
`less` และ `more` คือคำสั่งสำหรับดูเนื้อหาไฟล์แบบแบ่งหน้าใน terminal แทนที่จะพิมพ์ทั้งหมดออกมารวดเดียวเหมือน `cat`, เราสามารถเลื่อนอ่านทีละส่วนได้ สำคัญมาก: `less` / `more` ไม่ใช่ editor จึงไม่ได้ใช้แก้ไขไฟล์
ลองนึกถึงการอ่านหนังสือเล่มหนา `cat` เหมือนเปิดหนังสือทั้งเล่มแล้วให้ข้อความไหลมาพร้อมกันทันที `less` และ `more` เหมือนอ่านทีละหน้า ทำให้โฟกัสและย้อนดูได้ง่ายกว่า
ตัวอย่างนี้เป็นคำสั่งพื้นฐานที่เจอจริงบ่อยในงานดูไฟล์ยาว
ทั้ง `less` และ `more` ใช้เพื่ออ่าน ไม่ได้แก้ไขไฟล์
less log.txt
# เปิดไฟล์ log ยาว ๆ เพื่ออ่านทีละส่วน
less article.txt
# อ่านบทความยาวโดยเลื่อนทีละหน้า
more report.txt
# เปิดรายงานยาวแบบแบ่งหน้า
# ระหว่างอยู่ใน less/more
# Space = เลื่อน 1 หน้า
# Enter = เลื่อน 1 บรรทัด
# q = ออก| คำสั่ง | หน้าที่ | เหมาะเมื่อไร |
|---|---|---|
| `cat` | พิมพ์เนื้อหาทั้งหมดออกทันที | ไฟล์สั้น อ่านเร็ว |
| `less` | ดูไฟล์แบบเลื่อนทีละส่วน | ไฟล์หรือ output ยาว และต้องเลื่อนอ่านคล่อง |
| `more` | ดูไฟล์แบบแบ่งหน้า | ต้องการวิธีอ่านไฟล์ยาวแบบพื้นฐาน |
| `nano` / `vim` | เปิดแก้ไขไฟล์ | ต้องการแก้ข้อความ ไม่ใช่แค่อ่าน |
ฝึกใช้ `less` และ `more` กับไฟล์ยาวหลายบรรทัด เพื่อให้คุ้นกับการเลื่อนอ่านแบบ page-by-page และแยกให้ออกว่าเป็นเครื่องมือดูไฟล์ ไม่ใช่เครื่องมือแก้ไข
เป้าหมายคือเปิดไฟล์ `log.txt` ด้วย `less` และฝึกออกจากโหมดอ่าน โจทย์: รัน `less log.txt` แล้วกด `q` เพื่อออก สิ่งที่ควรสังเกต: คุณควรเห็นเนื้อหาไฟล์หลายบรรทัดแบบแบ่งช่วง ไม่ไหลหมดในครั้งเดียว
เป้าหมายคือเห็นความต่างระหว่างการแสดงผลทั้งไฟล์รวดเดียว (`cat`) กับการดูทีละส่วน (`less`) โจทย์: รัน `cat article.txt` แล้วรัน `less article.txt` สิ่งที่ควรสังเกต: `cat` แสดงทั้งหมดทันที ส่วน `less` ให้เลื่อนอ่านเป็นช่วง
เป้าหมายคือเปิดไฟล์รายงานยาวหลายบรรทัดด้วยเครื่องมือ pager โจทย์: รัน `more report.txt` (ถ้าต้องการ ลองซ้ำด้วย `less report.txt` ได้) สิ่งที่ควรสังเกต: การเลื่อนอ่านทีละส่วนช่วยให้ตามข้อมูลในรายงานยาวได้ง่ายกว่า `cat`