Part 5 · ห้องควบคุม Terminal, tmux และ maw

บทที่ 42: อาคาร ห้อง และโต๊ะย่อยใน tmux

บทสั้นสำหรับมือใหม่ใน Part 5: ห้องควบคุม Terminal, tmux และ maw

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

สามเรื่องที่ควรจำ

  1. อาคาร (session) ครอบห้อง (window) และห้องครอบโต๊ะย่อย (pane)

    ประเด็นจากหัวข้อ “สามเรื่องที่ควรจำ”

  2. ที่อยู่ของห้องต้องอ่านจากรายการปัจจุบัน ไม่เดา

    ประเด็นจากหัวข้อ “สามเรื่องที่ควรจำ”

  3. ที่อยู่บอกตำแหน่ง ไม่ได้บอกคุณภาพหรือความเสร็จของงาน

    ประเด็นจากหัวข้อ “สามเรื่องที่ควรจำ”

สรุปแก่นของบทที่ 42 เป็นจุดสังเกตที่กลับมาทบทวนได้รวดเร็ว

สถานการณ์ใกล้ตัว

ผู้ดูแลต้องการดู House-A แต่เห็นชื่อคล้ายกันสามแห่ง เขารีบใช้ชื่อจากความจำและไปเปิดอีก pane หนึ่งซึ่งมีข้อมูลคนละโครงการ แม้ไม่ได้แก้ไฟล์ เขาก็อาจนำข้อความผิดชุดไปสรุปให้เจ้าของธุรกิจ

ต้นทุนของการชี้เป้าผิดไม่ได้เกิดเฉพาะตอนส่งคำสั่ง การอ่านผิดห้องก็สร้างการตัดสินใจผิดได้ ดังนั้น “รู้โครงสร้าง” คือทักษะความปลอดภัย ไม่ใช่ศัพท์เทคนิคที่เรียนไว้สอบ

ผลลัพธ์ของบทนี้

คุณจะอ่านโครงสร้าง tmux สามระดับได้ และชี้เป้าหมายโดยไม่สับสนระหว่างทั้งอาคาร แท็บงาน และช่องย่อย

ศัพท์ใหม่ในบทนี้

  1. อาคารหนึ่งหลัง (session): พื้นที่ทำงานก้อนใหญ่ที่ tmux เก็บไว้
  2. ห้องหรือแท็บงาน (window): งานหนึ่งชุดภายในอาคารนั้น
  3. โต๊ะหรือช่องย่อย (pane): พื้นที่ Terminal ที่แบ่งอยู่ในห้องเดียวกัน
  4. เป้าหมาย (target): ชื่อหรือตำแหน่งที่คำสั่งจะอ่านหรือส่งผลไปถึง
  5. ชื่อกำกับ (label): ชื่อที่ช่วยให้คนแยกบริบท ไม่ใช่หลักฐานว่างานมีสถานะใด

ภาพเปรียบเทียบ

ใช้สำนักงานเดิม:

  • session คืออาคารหนึ่งหลัง
  • window คือชั้นหรือห้องประชุมที่มีป้ายชื่อ
  • pane คือโต๊ะย่อยที่แบ่งกันอยู่ในห้องนั้น

สมมติชื่อ demo-oracle:1.0:

  • demo-oracle ชี้ถึง session
  • 1 ชี้ถึง window ลำดับหนึ่ง
  • 0 ชี้ถึง pane ลำดับหนึ่งใน window นั้น

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

แก่นของเรื่อง

ถ้าแปลเป็นภาพสำนักงาน โครงสร้างคือ:

อาคารหนึ่งหลังคือ session ภายในมีห้องหรือ window และแต่ละห้องแบ่งเป็นโต๊ะย่อยหรือ pane

การรู้สามชั้นช่วยตอบคำถามต่างกัน:

  • ระบบมีพื้นที่ทำงานหลักกี่ชุด
  • ในพื้นที่หนึ่งมีงานย่อยกี่หน้าต่าง
  • หน้าต่างหนึ่งถูกแบ่งเป็นช่องกี่ช่อง

แต่อย่าตีความเกินหลักฐาน ชื่อ Jan บน window ไม่รับประกันว่า Jan กำลังทำงาน ชื่อ House ในทะเบียนไม่รับประกันว่ามี process รันอยู่ และ pane ที่มีข้อความล่าสุดไม่รับประกันว่าข้อความนั้นเป็นผลลัพธ์ที่ตรวจแล้ว

สำหรับมือใหม่ การดูเพียงชื่อและตำแหน่งจากรายการ ปลอดภัยกว่าการเดินเข้าไปอยู่ในห้องนั้น (attach) เพราะเมื่อเข้าไปแล้ว สิ่งที่พิมพ์อาจไปถึงงานจริง แม้เราตั้งใจเพียงดู

ตัวอย่างจำลองตามกระบวนการ Oracle V4

ระบบจำลองมี session ชื่อ demo-oracle ภายในมี window jan และ house-a ส่วน house-a แบ่งสอง pane: pane แรกทำงาน และ pane ที่สองแสดง log

ผู้ดูแลต้องการตอบเพียงว่า “House-A ยังมีพื้นที่ทำงานอยู่หรือไม่” เขาจึงเริ่มจากรายการ session และรายการที่ maw รายงาน ไม่ต้องเปิด log เต็ม เมื่อคำถามเปลี่ยนเป็น “งานถึงขั้นไหน” เขาจึงต้องดูรายงานหรือข้อความล่าสุด พร้อมระวังข้อมูลส่วนตัว

หยุดก่อน

คำถามของคุณต้องการรู้ระดับ session, window หรือ pane กันแน่ และหลักฐานที่เล็กที่สุดซึ่งตอบได้คืออะไร

ลองทำอย่างปลอดภัย

🟢 ภารกิจ: แปลที่อยู่เป็นภาษาคน

แปล demo-oracle:1.0 เป็นสามบรรทัด: ชื่ออาคาร (session), หมายเลขห้อง (window) และหมายเลขโต๊ะย่อย (pane) แล้วเขียนคำถามหนึ่งข้อที่ที่อยู่นี้ตอบไม่ได้

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

ระวังความเข้าใจผิด

ความเข้าใจผิด: “หนึ่ง House เท่ากับหนึ่ง pane เสมอ”
สิ่งที่แม่นกว่า: การจัดห้องเปลี่ยนได้ตามรุ่นและลักษณะงาน ภาพสามระดับเป็นโครงของ tmux ไม่ใช่กฎว่าบ้านหนึ่งหลังต้องมีโต๊ะย่อยกี่ตัว

ความเข้าใจผิด: “เห็นชื่อในรายการแปลว่ากำลังทำงาน”
สิ่งที่แม่นกว่า: รายชื่อ สถานะของงานที่โปรแกรมกำลังทำ และความคืบหน้าเป็นคนละหลักฐาน

สามเรื่องที่ควรจำ

  1. อาคาร (session) ครอบห้อง (window) และห้องครอบโต๊ะย่อย (pane)
  2. ที่อยู่ของห้องต้องอ่านจากรายการปัจจุบัน ไม่เดา
  3. ที่อยู่บอกตำแหน่ง ไม่ได้บอกคุณภาพหรือความเสร็จของงาน

คำถามชวนคิด

ถ้าชื่อหน้าต่างเขียนว่า DONE แต่รายงานยังไม่มี คุณจะเชื่อชื่อหรือขอหลักฐานอะไรเพิ่ม

สะพานไปบทถัดไป

เมื่ออ่านที่อยู่ได้แล้ว เราจะลองมองหา Jan และ House จากรายการแบบอ่านอย่างเดียว โดยไม่เข้าไปพิมพ์ใน pane


ค้นทั้งเล่ม

อยากรู้เรื่องอะไร

พิมพ์อย่างน้อย 2 ตัวอักษร