PlusMagi's Blog By Pitt Phunsanit Linux,macOS,PowerShell,Rust,Shell Script,Unix-like,Windows,WSL Microsoft Coreutils for Windows: เมื่อคำสั่ง Linux ยอดฮิตพร้อมใช้งานแบบ Native บน Windows

Microsoft Coreutils for Windows: เมื่อคำสั่ง Linux ยอดฮิตพร้อมใช้งานแบบ Native บน Windows

ในการพัฒนาซอฟต์แวร์และดูแลระบบยุคปัจจุบัน นักพัฒนามักต้องสลับการทำงานไปมาระหว่าง Linux, macOS, Docker Container, WSL และ Windows ปัญหาใหญ่ที่พบเจอคือความไม่สอดคล้องกันของชุดคำสั่ง Command Line บน Windows (CMD และ PowerShell) ที่แตกต่างจากระบบปฏิบัติการอื่น ทำให้ Script หรือความคุ้นชินในการใช้คำสั่ง Unix ไม่สามารถนำมาใช้ได้ทันที

ในงาน Microsoft Build 2026 ทาง Microsoft ได้เปิดตัว Coreutils for Windows ชุดคำสั่งสไตล์ Unix/Linux มากกว่า 75 คำสั่ง มาให้ใช้งานบน Windows แบบ Native เพื่อขจัดช่องว่างและทำให้การทำงาน Cross-Platform เป็นไปอย่างราบรื่น


เบื้องหลังทางเทคนิค: ขับเคลื่อนด้วย Rust (uutils)

Microsoft เลือกพัฒนา Coreutils for Windows โดยต่อยอดจากโปรเจกต์ Open Source ยอดนิยมอย่าง uutils/coreutils ซึ่งเป็นการ Rewrite ชุดคำสั่ง GNU Coreutils ขึ้นมาใหม่ด้วยภาษา Rust

  • Memory Safety & High Performance: ภาษา Rust ช่วยป้องกันช่องโหว่ด้านหน่วยความจำ พร้อมให้ความเร็วการทำงานระดับ Native โดยไม่ต้องรันผ่าน Subsystem หรือ Emulation Layer แบบ Cygwin/WSL
  • ขนาดเล็กกระทัดรัด: รวมอยู่ใน Multi-Call Binary เพียงตัวเดียวขนาดเพียง 4.6 MB เผยแพร่ให้เรียกใช้ผ่านชื่อคำสั่งมาตรฐาน เช่น cat.exe, grep.exe, ls.exe, head.exe
  • MIT License: ต่างจาก GNU Coreutils เดิมที่เป็น GPLv3 ตัว uutils ใช้ MIT License ซึ่งเปิดกว้างและสะดวกต่อการนำไปใช้งานในสภาพแวดล้อมระบบปฏิบัติการและองค์กร

ครบครันด้วย Core, Findutils และ Grep

แพ็กเกจนี้มิได้มีเพียงคำสั่งจัดการไฟล์พื้นฐานเท่านั้น แต่ได้รวมเอา 3 ส่วนสำคัญไว้ในที่เดียว

  • Core Utilities: คำสั่งพื้นฐาน เช่น cat, ls, head, tail, sort, uniq, wc
  • Findutils: คำสั่งค้นหาและประมวลผลไฟล์ทรงพลังอย่าง find และ xargs
  • GNU-compatible Grep: คำสั่งค้นหาข้อความแบบ Regular Expression ยอดฮิตที่ฝั่ง Windows รอคอยมานาน

จุดเด่นและการรองรับ Backward Compatibility

  • เขียน Script เดียว ใช้ได้ทุกที่: ไฮไลต์สำคัญคือคำสั่ง แฟลก (--help, -v) และการต่อ Pipe (|) จะทำงานเหมือนกันทุกประการ ไม่ว่าจะรันบน Windows, macOS, Linux หรือ Docker Container
  • รองรับคำสั่ง DOS เดิม: Microsoft ได้รวมพอร์ตคำสั่ง sort และ find เวอร์ชันดั้งเดิมของ DOS ไว้ด้วย ทำให้ Shell Script ฝั่ง Windows CMD แบบเก่าที่ใช้สวิตช์เครื่องหมาย Slash (เช่น find /i) ยังคงทำงานได้ ไม่สะดุด

ข้อจำกัดที่ควรรู้

  • POSIX Permissions ไม่รองรับ: คำสั่งที่เกี่ยวข้องกับสิทธิ์ไฟล์สไตล์ POSIX เช่น chmod, chown, chgrp และ chroot ไม่สามารถใช้งานบน Windows ได้ เนื่องจาก Windows ใช้ระบบ Windows ACLs ในการจัดการสิทธิ์
  • ยังไม่มีคำสั่ง dd: ปัจจุบันคำสั่ง dd ยังไม่ถูกรวมเข้ามาในแพ็กเกจ
  • Name Collisions (ชื่อคำสั่งซ้ำ): คำสั่งบางตัวมีชื่อชนกับคำสั่งที่มีอยู่แล้วใน CMD หรือ PowerShell (เช่น date, rmdir) การเรียกใช้จะขึ้นอยู่กับลำดับ PATH หรือ Alias ของ Shell นั้น ๆ

เริ่มต้นใช้งาน

ผู้ใช้ Windows สามารถติดตั้ง Coreutils ได้อย่างง่ายดายผ่าน WinGet บน PowerShell หรือ CMD
winget install Microsoft.Coreutils


การเปิดตัว Coreutils for Windows ครั้งนี้ นับเป็นอีกหนึ่งก้าวสำคัญต่อจาก curl และ sudo ที่ Microsoft นำมาใส่ไว้ก่อนหน้า ช่วยลดความยุ่งยากในการสลับบริบทคำสั่ง และทำให้ Windows กลายเป็นสภาพแวดล้อมที่เปิดกว้างและเป็นมิตรกับนักพัฒนามากยิ่งขึ้น


อ่านเพิ่มเติม

Exit mobile version