2 คะแนน โดย GN⁺ 2025-09-18 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • GNU Midnight Commander เป็น ตัวจัดการไฟล์แบบสองพาเนล ที่ทรงพลังและมองเห็นภาพได้ชัดเจน
  • ทำงานในสภาพแวดล้อมแบบข้อความ และมีความสามารถอย่าง คัดลอก ย้าย ลบไฟล์ และจัดการโครงสร้างไดเรกทอรี
  • มีความสามารถในตัวหลากหลาย เช่น ตัวแสดงผลภายใน, ตัวแก้ไข, ตัวดูความแตกต่าง
  • ใช้งานไลบรารี ncurses หรือ S-Lang จึงทำงานได้ในแทบทุกสภาพแวดล้อม เช่น คอนโซล, X terminal, SSH, รีโมตเชลล์
  • เป็นซอฟต์แวร์โอเพนซอร์สภายใต้ไลเซนส์ GPLv3+ มอบ เครื่องมือที่ทั้งอิสระและทรงพลัง ให้ผู้ใช้และนักพัฒนา

แนะนำโปรเจกต์

  • GNU Midnight Commander (หรือ mc) คือ ตัวจัดการไฟล์แบบสองพาเนล ที่ทำงานในโหมดข้อความและมีความสามารถครบถ้วน
  • เป็นซอฟต์แวร์เสรีบนพื้นฐาน GPL ที่ทุกคนสามารถใช้งานและปรับแก้ได้

ความสามารถหลักและจุดเด่น

  • ในอินเทอร์เฟซแบบข้อความเต็มหน้าจอ ผู้ใช้สามารถ คัดลอก ย้าย ลบไฟล์ รวมถึงจัดการโครงสร้างไดเรกทอรีทั้งหมดได้อย่างง่ายดาย
  • มีฟังก์ชัน ตัวแสดงผลในตัว, ตัวแก้ไข, ตัวดู Diff ทำให้ตรวจสอบและแก้ไขไฟล์ข้อความ รวมถึงดูความแตกต่างระหว่างไฟล์ได้สะดวก
  • ใช้ไลบรารีส่วนติดต่อข้อความที่ใช้งานทั่วไปอย่าง ncurses และ S-Lang จึงมอบประสบการณ์ใช้งานที่สม่ำเสมอในหลากหลายสภาพแวดล้อม เช่น คอนโซลทั่วไป, เทอร์มินัล X Window, SSH และรีโมตเชลล์ทุกประเภท

การติดตั้งและซอร์สโค้ด

  • ติดตั้งได้ง่ายผ่าน ตัวจัดการแพ็กเกจ ส่วนใหญ่
  • ซอร์สถูกมิเรอร์ไว้ที่ OSU OSL และพัฒนาอยู่ใน ที่เก็บ GitHub อย่างเป็นทางการ

เอกสารและความช่วยเหลือ

  • มี ระบบช่วยเหลือออนไลน์ตามบริบท ผ่านปุ่ม F1 ให้เรียกดูความช่วยเหลือได้ทันทีระหว่างใช้งาน
  • มี หน้า manual ที่ใช้งานได้จริงสูงเป็นเอกสารทางการ

ธีมและการปรับแต่ง

  • รองรับ ชุดสีและธีมสกิน ที่หลากหลาย
  • สามารถอ้างอิงสกินที่มาพร้อมชุดแจกจ่าย และหากต้องการก็พัฒนาและนำมาใช้เองได้

การมีส่วนร่วมและการสนับสนุนจากชุมชนโอเพนซอร์ส

  • ทั้งผู้ใช้และผู้ร่วมพัฒนาสามารถเข้าร่วมได้อย่างคึกคัก พร้อมรับฟีดแบ็กและการสนับสนุนผ่านชุมชน

1 ความคิดเห็น

 
GN⁺ 2025-09-18
ความคิดเห็นใน Hacker News
  • ฉันชอบ Midnight Commander มากจนติดตั้งไว้ในทุกระบบที่ใช้ มันมีประสิทธิภาพและใช้งานสบายกว่ามากสำหรับการสำรวจระบบไฟล์หรือทำงานพื้นฐานต่าง ๆ ยิ่งถ้าเรียนรู้คีย์ลัดและใช้ร่วมกับเครื่องมือ command line อื่น ๆ ให้ดี จะยิ่งเห็นคุณค่าของมัน เช่น ใน MC ถ้ากด Ctrl+O จะสลับไปยัง shell prompt ปกติของไดเรกทอรีปัจจุบันได้ และถ้ากด Ctrl+O อีกครั้งก็จะกลับเข้า MC ทำให้ผสมข้อดีของทั้ง MC และ shell ได้อย่างมีประสิทธิภาพ

    • ฉันใช้ MC โดยเฉพาะเวลาย้ายไฟล์บน NAS มันยอดเยี่ยมมาก ส่วนฝั่ง GUI file manager ฉันคิดว่า Dolphin ดีที่สุด เพราะมี shell แบบรวมอยู่ในไดเรกทอรีปัจจุบัน แบ่งมุมมองได้ และเปิด URL แบบ ssh หรือ SFTP ได้ทันที สำหรับงานบนเครื่อง Dolphin กับ shell ของมันสะดวกกว่ามาก
    • นอกจาก Ctrl+O แล้ว ยังมี shell prompt แบบ (หนึ่งบรรทัด) ให้ใช้ได้ตลอด และยังมีฟีเจอร์ผสานที่น่าสนใจผ่าน <Ctrl+X> ด้วย เช่น ถ้าเลือกหลายไฟล์ใน panel ปัจจุบันแบบมองเห็นได้ แล้วอยากบีบอัด tar ไปเป็น "/tmp/foo.tgz" ก็ทำได้แบบ tar czf /tmp/foo.tgz <Ctrl+X><T>
    • เรื่องที่น่าเสียดายคือมันไม่รองรับคีย์ไบน์แบบ vim โดยค่าเริ่มต้น ฉันอยากได้ความสม่ำเสมอของการควบคุมคีย์ทั้งระบบและในเครื่องมือ TUI ต่าง ๆ
    • ฉันชอบมันมากกว่าที่คุณชอบ MC เสียอีก มันหลอมรวมอยู่ใน workflow และวิธีคิดเรื่องการจัดการไฟล์ของฉันอย่างสมบูรณ์
    • น่าสนใจที่ GNOME รุ่นใหม่ก็เพิ่มฟีเจอร์คล้ายกันเข้ามาแล้ว โดยมีคีย์ลัด “Ctrl + .” สำหรับเปิดไดเรกทอรีปัจจุบันในเทอร์มินัล
      ดูบันทึกการออก GNOME 49
  • ฉันเห็นด้วยว่า Midnight Commander เป็นเครื่องมือที่ยอดเยี่ยม แต่ดูเหมือนคนรุ่นนี้จะไม่ค่อยรู้ว่าเราสูญเสียอะไรไปบ้าง ในยุค Norton Commander งานไฟล์พื้นฐานที่รวดเร็วไม่ได้เกิดจากการมีสอง panel อย่างเดียว แต่เกิดจากการออกแบบซอฟต์แวร์ที่ประณีตโดยคำนึงถึงการทำงานร่วมกับฮาร์ดแวร์ด้วย ถ้าจะใช้ให้มีประสิทธิภาพสูงสุดต้องใช้แป้นตัวเลขแบบ IBM PC คลาสสิก โดยปุ่ม + ใหญ่, 0 ใหญ่, [num]/*- ล้วนสำคัญ ปุ่มฟังก์ชันก็เรียงอยู่ด้านบนคีย์บอร์ด และ ESC ก็ตอบสนองทันที โครงสร้างแบบนี้ทำให้งานอย่างเลือกไฟล์ทั้งหมดหรือย้ายไฟล์จบได้ด้วยการขยับมือรวดเร็วเพียงครั้งเดียว ถ้าลองทำแบบเดียวกันด้วยปุ่ม + ที่อยู่ข้าง = บนคีย์บอร์ดยุคนี้ จะรู้เลยว่ามันไม่เหมือนกันเลย

    • ปัญหา delay ของ ESC จริง ๆ ไม่ใช่ปัญหาของ mc แต่เกิดจาก terminal emulator ที่ต้องจัดการ escape sequences ถ้ากดเร็ว ๆ สองครั้งก็ได้ความเร็วเกือบเหมือน DOS
    • “เลือกทุกไฟล์” จริง ๆ คือปุ่ม * ปุ่มเดียว ส่วน + กับ Enter (โดยสมมติว่าไม่มีอะไรถูกเลือกอยู่) ใช้สำหรับเลือกหรือรันไฟล์เดียว
    • ถ้ามีคีย์บอร์ดที่ออกแบบมาดีจริง ๆ ก็ยังได้ประสิทธิภาพแบบนั้นอยู่ และถ้าคุณต้องนั่งงอใช้โน้ตบุ๊กไปอีกนาน ปัญหามันคงใหญ่กว่าเรื่องมี numpad หรือไม่
    • พอพูดถึง Norton Commander ฉันจะนึกถึงยุค Intel Pentium เสมอ ปัจจุบันถ้าต้องทำงานแบบมองภาพรวมทั้งสองฝั่งพร้อมกัน ฉันใช้ beyond compare
    • มีคนบอกว่าความต่าง 0.1 วินาทีสำคัญ แต่ในความเป็นจริงมันมีความไม่มีประสิทธิภาพจากการต้องย้ายตำแหน่งมือมากอยู่ดี คอมโบ Ctrl+A ที่ใช้กันทั่วไปดีกว่าเยอะ และยังทำหลายอย่างด้วยมือเดียวได้ด้วย
  • น่าสนใจที่ชื่ออย่างเป็นทางการของ file manager แบบสอง panel คือ "Orthodox File Manager(OFM)" ฟังดูเหมือนมุกทางวัฒนธรรมที่นิยมกันในยุโรปตะวันออกหรืออดีตสหภาพโซเวียต
    ข้อมูลที่มาที่ละเอียด

    • คำว่า "orthodox" หมายถึงแนวทาง GUI ที่ออกแบบโดยให้คำสั่งเป็นศูนย์กลางภายใน และให้องค์ประกอบ UI ทำหน้าที่เพียงกระตุ้นคำสั่งเหล่านั้น การออกแบบแบบนี้พบได้ในซอฟต์แวร์จำนวนมากที่แก้ไขดัดแปลงได้ง่าย เช่น Vim, Emacs, StumpWM โดยสามารถขยายความสามารถได้โดยไม่ต้องผูกติดกับ plugin API รายละเอียดมีในบทความที่ลิงก์ไว้ข้างบน
    • คำว่า "Orthodox File Manager" จริง ๆ แล้วค่อนข้างเป็นมีมที่ผู้เขียนตั้งขึ้นเอง เมื่อ 20~25 ปีก่อน แม้แต่ในกลุ่มผู้ใช้/นักพัฒนาตัวยงของสายนี้ก็ไม่ได้ใช้คำนี้กันทั่วไป และมักใช้ในเชิงล้อเลียนหรือขำ ๆ แต่ก็แสดงให้เห็นว่าถ้ายึดติดกับคำศัพท์แบบ Dr. Nikolai มากพอ วันหนึ่งก็อาจทำให้มันแพร่หลายได้
    • ในรัสเซีย คำว่า "orthodox" มักถูกใช้ในความหมายว่า “วิธีที่ถูกต้องตามแบบแผน” หรือ “วิธีที่สมบูรณ์” มากกว่าความหมายทางศาสนาอย่างเดียว และเมื่อเติมรูปปฏิเสธเข้าไป ก็อาจสื่อถึงวิธีที่นอกรีตหรือผิดแบบ เช่น ใส่สับปะรดบนพิซซ่า
    • เหตุผลที่ OFM ได้รับความนิยมในยุโรปตะวันออก เป็นเพราะตอนนั้นไม่มีวัฒนธรรมแบบ Unix มาก่อน คนที่คลั่งคอมพิวเตอร์ส่วนใหญ่เป็นผู้ใช้ DOS และส่วนตัวฉันค่อนข้างผิดหวังที่พวกเขาไม่ค่อยพยายามเรียนรู้ภาษา shell ให้จริงจัง
    • นอกจากบทความข้างต้นแล้ว ยังดู Wikipedia 'Orthodox file manager' ได้ด้วย
  • ตอนที่ OFM ปรากฏตัวครั้งแรก ต้องใช้เวลามากในการอธิบายว่าทำไมบางฟีเจอร์ถึงใช้ไม่ได้บน OS/2, Unix, Linux, Windows NT ฯลฯ เพราะก่อนหน้านั้นมีเพียง MS/PC/DR-DOS เท่านั้นที่ทำสิ่งอย่างการเข้าถึงทรัพยากรระบบบางอย่างโดยตรงได้ เช่น การจัดการ PSP หรือการเข้าถึง video RAM/keyboard buffer ไฟล์ก็ไม่ได้มีนามสกุลเสมอไป รูปแบบ timestamp ก็มีหลายแบบ แถมยังมีแนวคิดใหม่อย่าง symbolic link ให้ต้องเรียนรู้อีก ทุกวันนี้วิธีคิดแบบ DOS ลดลงไปมากแล้ว และในทางกลับกัน เครื่องมือแบบ MS/PC/DR-DOS กลับดูแปลกกว่าสำหรับมือใหม่ยุคใหม่เสียอีก เครื่องมือเก่า ๆ ยังมีลักษณะเฉพาะอย่างชื่อไฟล์ 8.3, กราฟิกพิเศษใช้เฉพาะกับ system file, UI เปลี่ยนทุกครั้งที่กด Alt เป็นต้น

  • เครื่องมือแบบนี้ทำให้ฉันนึกถึง Norton Commander และช่วงวัยเด็กที่เรียนคอมพิวเตอร์ในสหภาพโซเวียต (USSR) อยู่เสมอจนรู้สึกคิดถึง แต่ปัจจุบันวิธีที่ฉันใช้คอมพิวเตอร์อยู่—และน่าจะรวมถึงคนส่วนใหญ่ด้วย—ต่างออกไปโดยสิ้นเชิง โครงสร้างไดเรกทอรีตื้นลง และแทบไม่มีงานจัดการไฟล์บ่อย ๆ เพราะข้อมูลส่วนใหญ่อยู่บนคลาวด์หรือถูกเชื่อมไว้ภายในแอปอยู่แล้ว (แม้แต่โปรเจกต์เขียนโค้ดก็เข้าถึงตรงจาก IDE ได้) แม้แต่ตอนดูแลระบบ Linux ฉันก็มักเข้าถึงแบบสุ่มหรือแก้เฉพาะไฟล์ มากกว่าจะไล่ลงตามลำดับชั้นแบบ MC เลยอยากรู้ว่าปัจจุบันยังมี use case แบบไหนที่เหมาะกับอินเทอร์เฟซสไตล์ MC ที่สุด

    • ฉันใช้ Total Commander บน Windows ตลอด มันเหนือกว่า Explorer มาก ทั้งเรื่องการสำรวจโครงสร้างไดเรกทอรี การจัดการ WSL volume การเข้าถึงด้วยคีย์บอร์ด การใช้แท็บ/บุ๊กมาร์ก รวมถึงความสม่ำเสมอและเสถียรของอินเทอร์เฟซ ถ้าจะเล่าข้อดีอื่น ๆ ต่อคงใช้เวลาอีกมาก
    • บน Windows ฉันใช้ mc สำรวจระบบไฟล์ WSL2 และบน Linux ก็ใช้ MC จัดการ remote server ที่ไม่มี GUI รวมถึงใช้ย้ายไฟล์ระหว่างโน้ตบุ๊กหลายเครื่องผ่าน SSH
    • จำได้ว่าเมื่อก่อนหลังติดตั้ง Windows เสร็จ สิ่งแรกที่ฉันทำคือการติดตั้ง FAR
    • ฉันใช้ MC มาอย่างต่อเนื่องทั้งงานและเรื่องส่วนตัว (รวมถึงสมัยที่ใช้ NC) มันเร็วและเพิ่มประสิทธิภาพกว่าตัวสำรวจไฟล์ GUI ทุกตัวที่ฉันเคยใช้ โดยเฉพาะฟีเจอร์ค้นหาไฟล์แบบ recursive แล้ว panelize นั้นยอดเยี่ยมมาก ทั้งการเลือกหลายไฟล์พร้อมกัน การคัดลอกระหว่างไดรฟ์คลาวด์/รีโมต/SSH ด้วยสอง panel การย้ายอย่างรวดเร็วผ่านประวัติไดเรกทอรี การเปรียบเทียบโฟลเดอร์ และอีกหลายอย่าง ใน MC ยังมี Esc-C ให้กระโดดไปยังพาธที่ต้องการได้ทันที พิมพ์อักษรตัวแรกของชื่อไฟล์ได้ และกด F4 เพื่อแก้ไขทันที
  • ฉันใช้งาน mc ให้คล่องไม่ได้เลย ในฐานะคนที่ใช้ GUI file manager มานาน ฉันรู้สึกว่าคีย์ลัดมันไม่ค่อยเป็นธรรมชาติ น่าเสียดายที่การทำงานกับไฟล์ผ่าน SSH แบบ pure CLI นั้นทั้งยุ่งยากและเสี่ยงต่อความผิดพลาดมาก โชคดีที่ช่วงหลังฉันเจอ file manager ชื่อ nnn ซึ่งรองรับการควบคุมคีย์พื้นฐานแบบที่ฉันคาดหวัง และทำให้ workflow ดีขึ้นมาก
    วิกิของ file manager nnn

    • ฉันก็คล้ายกัน เครื่องมือที่ฉันใช้จัดการไฟล์ได้เร็วและง่ายที่สุดคือ coreutils (แล้วแต่กรณีก็เสริม rsync/zmv/zcp) เพราะไม่ว่าจะล็อกอินที่ไหน—เครื่อง local, server, router ฯลฯ—ก็ได้ชุดเครื่องมือเดียวกันเสมอ ส่วน GUI file manager ฉันใช้เฉพาะงานมัลติมีเดียอย่างรูปภาพ หนัง หรือ PDF
    • เครื่องมือนี้ให้ความรู้สึกว่าออกแบบมาเข้ากับโค้ดสไตล์ GenX มาก ถ้าไม่เคยใช้ Norton Commander มาก่อนก็แทบไม่มีเหตุผลจะใช้มัน
    • เห็นด้วยว่า nnn ให้ความรู้สึกเบากว่ามาก และไม่ต้องคอยดูแลไฟล์ .rc เพิ่มเติม จึงใช้ได้ทันทีในหลายระบบ
    • เห็นด้วยว่าการควบคุมคีย์ของ mc ไม่ค่อยเป็นธรรมชาติ แต่จริง ๆ แล้วมันสืบทอดตรงมาจาก Norton Commander ตั้งแต่ยุค 80
  • ฉันไม่ได้ใช้ MC แต่เคยทำ graphical file manager คล้าย ๆ กัน โดยได้แรงบันดาลใจจาก Directory Opus บน Amiga ตอนปลายยุค 90 ที่ GTK+ ออกมาใหม่ ๆ ฉันอินกับการเขียนโปรแกรม C และ Linux มาก และมันก็นำไปสู่โปรเจกต์ทำ dual-panel file manager เป็นประสบการณ์ที่ยอดเยี่ยมจริง ๆ
    แนะนำ Directory Opus

    • น่าเสียดายนิดหน่อยที่ไม่มีเวอร์ชันใหม่ออกมาตั้งแต่ปี 2016 ทั้งที่ยังมีคนใช้มันอย่างมีประโยชน์อยู่มาก การปรับปรุงที่น่าจะถูกขอมากที่สุดคงเป็นการย้ายจาก GTK2 ไป GTK3 ซึ่งก็พอเข้าใจได้ว่าทำไมถึงไม่อยากทำ
      โปรเจกต์ gentoo
    • น่าสนใจที่ Directory Opus ยังขายอยู่บน Windows ในราคา 60 ดอลลาร์ ทำให้อดสงสัยไม่ได้ว่าทุกวันนี้ใครยังซื้ออยู่บ้าง
  • เมื่อก่อนฉันใช้ XTree Gold และมันดีมาก ส่วน Midnight Commander ฉันได้ยินแต่ชื่อแต่ยังไม่เคยลองใช้ ตั้งใจว่าสักวันจะลองแน่นอน แต่ก็สงสัยว่าทำไมสไตล์ TUI แบบ MS edit.com หรือ qbasic ถึงไม่ค่อยสืบทอดมาในโลก TUI สมัยนี้ ทั้งที่ตอนเด็กฉันชอบอินเทอร์เฟซแบบนั้นมาก แม้แต่ใน modern terminal หรือแอป textual/ratatui ก็ยังไม่ค่อยเห็น มันรู้สึกว่าการใช้เทอร์มินัลแบบอิงพิกัดหน้าจอเป็นพื้นฐานของแอป TUI น่าจะเป็นธรรมชาติกว่าใน MS-DOS เสียอีก แต่ terminal emulator สมัยใหม่กลับให้ความรู้สึกด้อยกว่า MS-DOS ในจุดนี้ หวังว่าการเขียนใหม่ของ edit ล่าสุดจะช่วยปลุกสไตล์ TUI นี้ให้กลับมาได้
    ข่าว MS edit เปิดซอร์ส

    • ฉันยังมีความทรงจำมากมายเกี่ยวกับแอป TUI บน DOS อาจเป็นแค่ความคิดถึง แต่ยุคที่ไฟล์ .COM ขนาด 40kB หรือ .EXE ขนาด 100kB ก็ทำอะไรเจ๋ง ๆ ได้มากมาย มันให้ความรู้สึกราวกับเวทมนตร์
    • เมื่อก่อนฉันใช้ file manager ที่ไม่ค่อยมีใครรู้จักชื่อ DM.COM เป็นหลัก มันเป็นตัวเลือกอันดับหนึ่งของฉันบน DOS ข้อมูลดาวน์โหลดคือ curl 'gopher://sdf.org/0/users/jmccue/repository/dm220.txt' > dm220.txt
  • ถ้าเปิดใช้ตัวเลือก panel แบบ "Lynx-like motion" กับ Quick view จะเหมาะอย่างยิ่งสำหรับการไล่ดู source tree ทั้งหมด และฝั่ง Debian ftp-masters ก็ใช้งานสิ่งนี้อย่างจริงจังร่วมกับปลั๊กอินตรวจสอบไลเซนส์
    กรณีศึกษาที่เกี่ยวกับ Debian

  • ฉันใช้ mc มาหลายสิบปีแล้ว สมัยยังเป็นโปรแกรมเมอร์ ฉันเคยพัฒนาระบบ PHP ทั้งระบบโดยใช้แค่ mcedit (เอดิเตอร์ในตัว) ด้วยซ้ำ ตอนนั้นฉันยังไม่รู้จัก vim ดังนั้นฟีเจอร์ syntax highlighting ของ mcedit จึงช่วยได้มาก

    • ฉันไม่เคยเห็นการไฮไลต์โค้ดใน mcedit เลย จริง ๆ แล้วฉันดูไฟล์ Prolog เป็นหลัก ถ้าเป็นนามสกุล .pl อย่างน้อยก็น่าจะมีการไฮไลต์แบบ Perl ให้บ้าง เลยแปลกใจนิดหน่อย
    • ตลอดมาฉันใช้ Notepad++ หรือ SciTE(scintilla.org) บ่อยกว่า เพราะฉันทำงานกับภาษาและแพลตฟอร์มหลากหลายมาก มันจึงเป็นตัวเลือกที่สม่ำเสมอสำหรับการจัดการ encoding หลายแบบ mc/mcedit ก็เท่มาก แต่ในสภาพแวดล้อมที่ถูกล็อกดาวน์ด้านความปลอดภัย ฉันต้องการอะไรที่เรียบง่ายและพกพาได้ และโดยทั่วไปเอดิเตอร์อเนกประสงค์ที่ใช้ได้แม้ไม่มีสิทธิ์ root จะมีประโยชน์กว่า