วัน: 1 สิงหาคม 2021

dirdir


1. คำสั่ง dir คืออะไร และหน้าที่หลัก

ในโลกของระบบปฏิบัติการ Unix/Linux, คำสั่งพื้นฐานที่ใช้ในการสำรวจโครงสร้างไฟล์คือการแสดงรายการ (Listing) เนื้อหาภายใน Directory คำสั่ง dir มีหน้าที่คล้ายกับคำสั่ง ls ที่เป็นมาตรฐานกว่า โดยมีวัตถุประสงค์หลักคือการแสดงชื่อไฟล์และไดเรกทอรีทั้งหมดที่อยู่ในตำแหน่งปัจจุบันหรือตำแหน่งที่ระบุ

สำหรับนักพัฒนาและ SysAdmin การเข้าใจว่าคำสั่งนี้ทำงานอย่างไรจึงสำคัญ เพราะมันเป็นรากฐานของการตรวจสอบระบบ (Troubleshooting) และการเขียนสคริปต์อัตโนมัติ (Scripting)


2. ไวยากรณ์ (Syntax) และพารามิเตอร์สำคัญ

dir [OPTION]... [FILE]...
  • -l (Long Format): แสดงรายละเอียดของไฟล์อย่างครบถ้วน รวมถึงสิทธิ์การเข้าถึง (Permissions), จำนวนลิงก์, เจ้าของ, กลุ่ม, ขนาดไฟล์ และวันที่แก้ไขล่าสุด
  • -a (All): แสดงรายการไฟล์ทั้งหมด รวมถึงไฟล์ที่ซ่อนอยู่ (Hidden files) ซึ่งมักขึ้นต้นด้วยจุด (.) เช่น .bashrc
  • -h (Human Readable): ใช้ร่วมกับ -l เพื่อแสดงขนาดไฟล์ในรูปแบบที่มนุษย์อ่านง่าย (เช่น K, M, G แทนการเป็นไบต์ดิบ)

3. ตัวอย่างการใช้งานจริง (Code Examples & Use Cases)

ในฐานะผู้เชี่ยวชาญระบบ ควรทราบว่าคำสั่ง dir มักเป็นเพียง alias หรือฟังก์ชันที่ถูกตั้งค่าให้ทำงานเหมือนกับ ls -l ในหลายระบบปฏิบัติการสมัยใหม่ ดังนั้น การใช้ ls จึงเป็น Best Practice ที่แนะนำกว่า แต่ตัวอย่างเหล่านี้แสดงถึงวิธีการใช้งานตามไวยากรณ์ของ dir

# 1. แสดงรายการไฟล์และโฟลเดอร์ทั้งหมดใน Directory ปัจจุบัน (แบบพื้นฐาน)
dir

# 2. แสดงรายละเอียดของทุกไฟล์อย่างครบถ้วน (Permissions, Size, Date)
dir -l

# 3. แสดงไฟล์ที่ซ่อนอยู่ทั้งหมด พร้อมรายละเอียด (ใช้สำหรับตรวจสอบ Config Files)
dir -la

# 4. การรวมคำสั่ง: ดูรายละเอียดและขนาดไฟล์แบบอ่านง่าย
dir -lah /var/log

4. ข้อควรระวังและ Best Practices

  • ความเข้ากันได้ (Portability): แม้ว่า dir จะใช้งานได้ในบางระบบ แต่คำสั่งมาตรฐานที่ได้รับการยอมรับทั่วโลกคือ ls การใช้ ls ในสคริปต์จึงช่วยให้โค้ดของคุณทำงานได้อย่างถูกต้องบนทุกสภาพแวดล้อม
  • การจัดการ Output (Piping): อย่าเพียงแค่แสดงผล แต่ควรนำ output ไปประมวลผลต่อ เช่น การนับจำนวนไฟล์ที่พบ dir -a | wc -l หรือการกรองเฉพาะไฟล์ประเภทใดประเภทหนึ่ง dir | grep .log
  • สิทธิ์การเข้าถึง (Permissions): หากคุณพยายามใช้คำสั่ง dir ใน Directory ที่ไม่มีสิทธิ์อ่าน (Read permission) คุณจะได้รับข้อผิดพลาด “Permission denied” ซึ่งเป็นสัญญาณว่าผู้ใช้งานปัจจุบันไม่มีสิทธิ์ในการสำรวจเนื้อหาของโฟลเดอร์นั้น

สรุปคือ dir เป็นเครื่องมือที่สะดวกสำหรับการตรวจสอบเบื้องต้น แต่สำหรับงานระดับ SysAdmin หรือการเขียน Shell Scripting ที่ต้องการความเสถียรและความแม่นยำ ควรใช้คำสั่ง ls และเรียนรู้การรวมมันเข้ากับ Pipe (|) เพื่อให้ได้ผลลัพธ์ที่สามารถนำไปประมวลผลต่อได้อย่างมีประสิทธิภาพ