ค้นหาเว็บไซต์

วิธีค้นหาจำนวนไฟล์ในไดเร็กทอรีและไดเร็กทอรีย่อย


ในคู่มือนี้ เราจะกล่าวถึงวิธีการแสดงจำนวนไฟล์ทั้งหมดในไดเร็กทอรีการทำงานปัจจุบันหรือไดเร็กทอรีอื่นและไดเร็กทอรีย่อยบนระบบ Linux

เราจะใช้คำสั่ง find ซึ่งใช้เพื่อค้นหาไฟล์ในลำดับชั้นไดเร็กทอรีร่วมกับคำสั่ง wc ซึ่งจะพิมพ์บรรทัดใหม่ จำนวนคำ และไบต์สำหรับแต่ละไฟล์ หรือข้อมูลที่อ่านจากอินพุตมาตรฐาน

ต่อไปนี้เป็นตัวเลือกที่เราสามารถใช้กับคำสั่ง find ได้ดังนี้:

  1. -type – ระบุประเภทไฟล์ที่จะค้นหา ในกรณีข้างต้น f หมายถึง ค้นหาไฟล์ปกติทั้งหมด
  2. -print – การดำเนินการเพื่อพิมพ์เส้นทางที่แน่นอนของไฟล์
  3. -l – ตัวเลือกนี้จะพิมพ์จำนวนบรรทัดใหม่ทั้งหมด ซึ่งเท่ากับจำนวนรวมของเส้นทางไฟล์สัมบูรณ์ที่ส่งออกโดยคำสั่ง find

ไวยากรณ์ทั่วไปของคำสั่ง find

find . -type f -print | wc -l
sudo find . -type f -print | wc -l

ข้อสำคัญ: ใช้คำสั่ง sudo เพื่ออ่านไฟล์ทั้งหมดในไดเร็กทอรีที่ระบุ รวมถึงไฟล์ในไดเร็กทอรีย่อยที่มีสิทธิ์ superuser เพื่อหลีกเลี่ยง “การอนุญาตถูกปฏิเสธ ” ข้อผิดพลาดดังภาพหน้าจอด้านล่าง:

คุณจะเห็นว่าในคำสั่งแรกด้านบน ไฟล์บางไฟล์ในไดเร็กทอรีการทำงานปัจจุบันไม่ถูกอ่านด้วยคำสั่ง find

ต่อไปนี้เป็นตัวอย่างเพิ่มเติมเพื่อแสดงจำนวนไฟล์ปกติทั้งหมดในไดเร็กทอรี /var/log และ /etc ตามลำดับ:

sudo find /var/log/ -type f -print | wc -l
sudo find /etc/ -type f -print | wc -l

สำหรับตัวอย่างเพิ่มเติมเกี่ยวกับ คำสั่งค้นหา และ คำสั่ง wc ของ Linux โปรดอ่านบทความชุดต่อไปนี้เพื่อดูตัวเลือกการใช้งาน เคล็ดลับ และคำสั่งที่เกี่ยวข้องเพิ่มเติม:

  1. 35 ตัวอย่างคำสั่ง 'ค้นหา' ที่เป็นประโยชน์ใน Linux
  2. วิธีค้นหาไฟล์ล่าสุดหรือไฟล์ที่แก้ไขของวันนี้ใน Linux
  3. ค้นหาไดเร็กทอรี 10 อันดับแรกและพื้นที่ดิสก์ไฟล์ใน Linux
  4. 6 ตัวอย่างคำสั่ง 'wc' ที่เป็นประโยชน์ในการนับบรรทัด คำ และตัวอักษร

นั่นคือทั้งหมด! ในกรณีที่คุณทราบวิธีการอื่นใดในการแสดงจำนวนไฟล์ทั้งหมดในไดเร็กทอรีและไดเร็กทอรีย่อยโปรดแบ่งปันกับเราในความคิดเห็น