mrg - เครื่องมือสำหรับแก้ปัญหาการแยกพยัญชนะ/สระใน macOS และลบไฟล์เมตาดาต้าจุกจิก
(github.com/ilotoki0804)mrg คือยูทิลิตี CLI ที่ใช้สำหรับลบไฟล์จุกจิกต่าง ๆ ที่ macOS สร้างขึ้น หรือใช้ปรับชื่อไฟล์ให้เป็น Unicode แบบ normalized
ความสามารถของ mrg
- ทำ Unicode filename NFC normalization (
--bad-unicode): แก้ปัญหาการแยกตัวอักษรของจาโม - ลบไฟล์
.DS_Store(--ds-store): ลบไฟล์.DS_Storeที่ถูกสร้างขึ้นเมื่อเปิดดูโฟลเดอร์ด้วย Finder - ลบไฟล์
._*(--dot): ลบไฟล์._*ที่ macOS ใช้เก็บเมตาดาต้าหรือข้อมูลสำหรับ indexing
จุดเด่นของ mrg
- รองรับ ANSI color: mrg รองรับสีในเทอร์มินัลที่สวยงาม ทำให้ตรวจสอบสถานะของไดเรกทอรีได้อย่างเข้าใจง่าย และสามารถปิดได้ผ่านตัวแปรสภาพแวดล้อม
NO_COLOR - มีรายงานการวิเคราะห์ที่อ่านง่าย: เมื่อใช้ mrg เพื่อสแกนหรือจัดระเบียบ ระบบจะแสดงผลการวิเคราะห์ที่ดูง่าย ช่วยให้เห็นได้ทันทีว่า mrg สแกนและจัดการอะไรไปบ้าง
- มีรายงานการวิเคราะห์แบบ JSON: นอกจากผลวิเคราะห์ที่ออกแบบมาสำหรับมนุษย์แล้ว ยังมีผลวิเคราะห์ในรูปแบบ JSON ที่เครื่องสามารถอ่านได้ด้วย
- มี Python API: mrg สามารถใช้เป็น Python module ได้เช่นกัน โดยใช้โมดูล
mrgของ Python เพื่อรันหรือปรับแต่ง mrg ผ่าน Python - ไม่มี dependency ภายนอก: ตอนรัน mrg ใช้เฉพาะไลบรารีมาตรฐานที่มากับ Python เท่านั้น และไม่ได้ใช้ไลบรารีภายนอกใด ๆ
การติดตั้ง
คุณสามารถติดตั้ง mrg ผ่าน homebrew ได้
brew tap ilotoki0804/homebrew-mrg
brew install mrg
หากใช้ uv ก็สามารถติดตั้งผ่าน uvx mrg ได้เช่นกัน
วิธีใช้งาน
โดยพื้นฐานแล้ว mrg รับ path เป็นอาร์กิวเมนต์ หากต้องการตรวจสอบไดเรกทอรี ให้ใส่พาธต่อท้ายคำสั่ง mrg ดังนี้
mrg .
หากเขียนเพียงเท่านี้โดยไม่ใส่อาร์กิวเมนต์อื่น ระบบจะทำงานในโหมดสแกนโดยอัตโนมัติ
ในสถานะนี้จะไม่มีการเปลี่ยนแปลงไฟล์ใด ๆ และจะเพียงตรวจสอบสถานะของไดเรกทอรีพร้อมแสดงผลการวิเคราะห์
หากต้องการจัดระเบียบหรือแก้ไขไฟล์จริง ๆ ต้องระบุอาร์กิวเมนต์เพิ่มเติม โดยสามารถใส่อย่างน้อยหนึ่งรายการจากตัวเลือกต่อไปนี้เพื่อจัดการไดเรกทอรีได้
--dot: ลบไฟล์._*โดยปกติจะลบเฉพาะกรณีที่ไฟล์มีขนาดตามปกติและมีไฟล์ต้นทางที่สอดคล้องกันอยู่เท่านั้น--bad-unicode: ทำ normalization ให้กับชื่อไฟล์/โฟลเดอร์ Unicode ที่ยังไม่ได้ NFC normalized--ds-store: ลบไฟล์.DS_Store
ตัวอย่างเช่น หากต้องการทำชื่อไฟล์และไดเรกทอรีทั้งหมดในไดเรกทอรี . ให้เป็น NFC สามารถใช้คำสั่งต่อไปนี้ได้
mrg . --bad-unicode
หากต้องการรัน --bad-unicode, --ds-store, --dot พร้อมกันทั้งหมด สามารถใช้แฟล็ก --all ได้
mrg . --all
ชื่อ mrg มาจากคำย่อของคำว่า "mekregi" ซึ่งเป็นคำผสมระหว่าง macOS กับคำว่า "ขยะ" ในความหมายว่าใช้จัดการไฟล์ขยะที่ macOS สร้างขึ้น
สามารถดูคำอธิบายฉบับสมบูรณ์ได้จากลิงก์ เป็นเครื่องมือโอเพนซอร์สที่เผยแพร่ภายใต้ Apache 2.0 และยินดีต้อนรับทั้ง PR, issue และการมีส่วนร่วมทุกแบบ
ยังไม่มีความคิดเห็น