ลิสต์รายชื่อไฟล์ทั้งหมดในโฟลเดอร์ ด้วย dir

เผยแพร่ครั้งแรก:

|

ปรับปรุงล่าสุด

เก็บที่

ลิสต์รายชื่อไฟล์ ที่อยู่ในไดเร็กทอรี่ (หรือโฟลเดอร์) ที่จะนำเสนอในครั้งนี้ จะใช้คำสั่ง dir ใน command prompt (หรือ dos) ซึ่งจะใช้แสดงรายการไฟล์และโฟลเดอร์ทั้งหมดออกมา

คำสั่ง dir ก็คือ directory เป็นอีกคำเรียกหนึ่งของ folder ที่เราคุ้นเคยกันนั่นเอง คำสั่งนี้จะช่วยแสดงชื่อไฟล์และโฟลเดอร์ที่อยู่ในโฟลเดอร์ (หรือ directory) ที่ต้องการ

ควรอ่านเรื่อง mkdir หรือ make directory ประกอบ

ลิสต์รายชื่อไฟล์

ลองเปิด command prompt ขึ้นมา โดยปกติแล้ว จะขึ้น path ของ root folder ผู้ใช้คอมพิวเตอร์เครื่องนั้น (เช่น C:\user\ชื่อ)

ลองพิมพ์ dir ลงไปตรง ๆ 

ลิสต์รายชื่อไฟล์

สิ่งที่แสดงข้างบนจะเป็น ชื่อไดร์ฟ ซีเรียลนัมเบอร์ของฮาร์ดดิสต์ ตามด้วยชื่อไฟล์แบบเต็ม (คือมีสกุลไฟล์ต่อท้าย) และโฟลเดอร์ทั้งหมดที่มี พร้อม วันที่และเวลา ที่มีการอัปเดตไฟล์หรือโฟลเดอร์นั้นล่าสุด มีขนาไฟล์ (หนวยเป็น bytes) ปิดท้ายด้วยสรุปจำนวนไฟล์และโฟลเดอร์ จำนวนเนื้อที่ที่ยังว่างอยู่ในฮาร์ดดิสต์นั้น

สิ่งที่แสดงคือ ไฟล์และโฟลเดอร์ย่อย ที่อยู่ใน directory หรือ folder หลัก (เช่น C:\user\ชื่อ) ถ้าเราต้องการแสดงรายชื่อไฟล์หรือโฟลเดอร์ย่อย ที่อยู่ในโฟลเดอร์อื่น เราต้องกำหนด path ไว้ด้วย

เช่น เราต้องการแสดงข้อมูลไฟล์ที่อยู่ใน D:\Temp เราต้องใช้คำสั่งนี้ 

Dir D:\Temp

หรืออาจจะย้ายตำแหน่งโฟลเดอร์ไปเลย คือใช้คำสั่ง cd (current directory) เพื่อกำหนด directory ที่ทำงาน ในตัวอย่างนี้จะเปลี่ยน root ไปยัง D:\Temp ก็ใช้ cd/d ต่อด้วย path ของจุดหมายปลายทาง เช่น เวลาเปิด command prompt ขึ้นมา จะขึ้น C:\Users\ชื่อ ถ้าเราจะเปลี่ยนเป็นไปที่ D:\Temp ก็พิมพ์ 

cd/d D:\Temp 

เมื่อไปอยู่ในโฟลเดอร์ที่ต้องการแล้ว หากต้องการลิสต์รายชื่อไฟล์ ที่อยู่ใน D:\Temp\ ลองพิมพ์

 dir

พอกด enter ก็จะได้รายชื่อไฟล์ทั้งหมดที่อยู่ใน D:\Temp\ ตามภาพ

ถ้าพิมพ์แค่ dir จะแสดงเฉพาะสิ่งที่อยู่ในโฟลเดอร์หลัก “ชั้นเดียว” คือ ถ้าเราเปิดโฟลเดอร์ D:\Temp\ ก็จะเจอแบบนี้  ไม่ได้ลงลึกไปถึงโฟลเดอร์ย่อยและไฟล์ต่าง ๆ ที่อยู่ในโฟลเดอร์ย่อยเหล่านั้น ซึ่งต้องกำหนดพารามิเตอร์เฉพาะเจาะจง

แต่ถึง current directory จะอยู่ที่  D:\Temp เราก็อาจจะเรียกดูข้อมูลในโฟลเดอร์อื่นได้เหมือนกัน เช่น เราจะแสดงรายชื่อไฟล์ใน D:\Condo แต่ current directoryอยู่ที่  D:\Temp เราก็กำหนดคำสั่งเจาะจงลงไปคือ 

Dir D:\Condo

เพียงเท่านี้เอง (ซึ่งใช้ร่วมกับพารามิเตอร์อื่นร่วมด้วยก็ได้)

พารามิเตอร์ สำหรับ ลิสต์รายชื่อไฟล์

สำหรับการกำหนดรูปแบบการแสดงรายละเอียดเฉพาะเจาะจง  ในคำสั่ง dir จะมีแบบนี้

พารามิเตอร์ที่ใช้บ่อย

คำว่าที่ใช้บ่อย นี่หมายถึงตัวเองใช้บ่อย แต่สำหรับบางท่านอาจจะไม่ค่อยได้ใช้ก็ได้ จะมีอยู่สองคำสั่งคือ 

/s จะลงลึกไปที่โฟลเดอร์ย่อยทุกโฟลเดอร์ที่อยู่ในโฟลเดอร์หลักที่กำหนด

/b จะแสดงเฉพาะรายชื่อไฟล์เท่านั้น โดยจะไม่มีรายละเอียดอื่น เช่น ชื่อฮาร์ดดิสต์ สรุปจำนวนไฟล์ วันเวลาที่อัปเดตล่าสุด 

พารามิเตอร์อื่น

นอกเหนือจาก 2 พารามิเตอร์ข้างต้นแล้ว ยังมีพารามิเตอร์อื่น ๆ เช่น 

/l (ตัว L ไม่ใช่ I) ถ้าอยากให้ชื่อไฟล์หรือโฟลเดอร์เป็นตัวพิมพ์เล็กทั้งหมด

/p แสดงทีละหน้า

/q แสดง metadata ด้วย

/w แสดงรายชื่อไล่ไปตามความกว้าง (จะไม่ไล่ลงไปด้านล่างแบบปกติ) 

/d เหมือนกับ w แต่จัดเป็นคอลัมน์ 

พารามิเตอร์เรียงลำดับ

เราสามารถใช้คำสั่ง dir แสดงผลเรียงลำดับได้ โดยใช้คำสั่ง 

/o

ซึ่งจะมีคำสั่งย่อยดังนี้

n เรียงตามลำดับตัวอักษร

e – เรียงตามสกุลไฟล์ (file extension) 

g – เอาโฟลเดอร์ขึ้นก่อน

s – เรียงตามขนาดไฟล์ จากขนาดเล็กสุดไปหาใหญ่

d – เรียงตามวันเวลา เก่าสุดขึ้นก่อน

ถ้าต้องการเรียงลำดับกลับทางกัน ให้ใส่ – หน้า parameter เหล่านั้น 

พารามิเตอร์ตามเวลา

เราสามารถใช้คำสั่ง

/t

เพื่อเรียงลำดับเวลาของไฟล์ในโฟลเดอร์นั้นได้

a จะเป็นเรียงลำดับตามเวลาที่เข้าถึงล่าสุดก่อน

c จะเรียงตามเวลาที่สร้างไฟล์หรือโฟลเดอร์นั้น

w จะเรียงตามลำดับที่มีการอัปเดตล่าสุด

พารามิเตอร์เกี่ยวกับ attribute

มีคำสั่งเกี่ยวกับ attribute โดยเฉพาะ โดยต้องใช้คำสั่ง

/a

ซึ่งหลังจากตัว a ให้ใช้คำสั่งย่อยตาม attribute เพื่อระบุให้แสดงอย่างที่ต้องการได้ เช่น

r คือแสดงไฟล์ที่กำหนดเป็น read-only เอาไว้

h คือแสดงไฟล์ที่ซ่อนไว้ (hidden files)

a คือแสดงไฟล์ที่ archiving ไว้ (ซอฟต์แวร์แบ็กอัปสมัยก่อนบางครั้งจะมีการตรวจสอบ attribute นี้เพื่อตัดสินใจว่าจะแบ็กอัปไฟล์หรือโฟลเดอร์นี้หรือไม่ แต่การใช้งานปัจจุบันไม่ค่อยพบว่ามีอะไรใช้ attribute นี้เท่าไหร่

s คือแสดง system file ตรงนี้จะคล้ายกับ /s ที่แสดงโฟลเดอร์ย่อยที่เขียนไปแล้ว แต่ในที่นี้จะใช้ร่วมกับ a เป็น /as

i คือแสดง indexed file – file ที่ทำ index ไว้

d คือแสดงเฉพาะโฟลเดอร์

แสดงเฉพาะสกุลไฟล์ที่ต้องการ

คำสั่ง dir สามารถใช้ * (ดอกจัน หรือ asterisk) เป็น wildcard ได้ เช่น ถ้าเราต้องการเฉพาะไฟล์ที่เป็น .doc เราสามารถเขียน

dir *.docx

ลิสต์รายชื่อไฟล์เฉพาะที่มีสกุลไฟล์เป็น .docx ทั้งหมดออกมา

การใช้งาน

คำสั่ง dir ไม่มีอะไรซับซ้อน เช่น ถ้าเราใช้คำสั่ง

dir /ad

จะได้ผลลัพธ์เป็นรายชื่อโฟลเดอร์ย่อย ที่อยู่ในนั้น แต่ถ้าว่า เราใส่ – (ขีดกลาง หรือ เครื่องหมายลบ) ไปใช้จะเป็นตรงข้าม เช่น 

dir /a-d

ก็จะได้ผลลัพธ์เป็นรายชื่อไฟล์ ไม่มีโฟลเดอร์ 

และเราสามารถเอาไปผสมกับค่าพารามิเตอร์อื่น ก็ได้ เช่น ต้องการแต่รายชื่อไฟล์ โดยไม่เอาชื่อโฟลเดอร์ด้วย ก็จะเขียนเป็น 

dir/b  /a-d

หรือ ถ้าองการแต่รายชื่อไฟล์ ไม่เอาชื่อโฟลเดอร์ และให้เรียงลำดับตามขนาดไฟล์ ด้วย ก็จะเขียนเป็น 

dir/b  /a-d /os

แบบนี้เป็นต้น 

ถ้าไม่มีไฟล์ตามคุณสมบัติที่ระบุไว้จะแสดงผลว่าไม่พบ (Not Found) 

TIP:  หากจำไม่ได้ว่าคำสั่งไหนใช้อะไร ให้ใส่ /? ตัวนี้จะแสดงรายละเอียดว่าแต่ละคำสั่งใช้ทำอะไร

อาจจะมีอย่างอื่นอีก ลองอ่านได้ที่เว็บของไมโครซอฟต์

ลิสต์รายชื่อไฟล์

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

Dir /s /b *.pdf

ซึ่งถ้าเราต้องการให้ส่งข้อมูลรายชื่อเหล่านั้น เป็น textfile สำหรับเอาไปใช้งานต่อ ก็เขียนเพิ่มเป็น 

Dir /s /b *.pdf > db.txt

เพียงเท่านี้ก็เรียบร้อย

อ้างอิง เว็บไมโครซอฟต์