การค้นหาไฟล์จาก Command Line
การค้นหาระบบไฟล์สำหรับเอกสารหรือไฟล์เฉพาะเป็นเรื่องง่ายและรวดเร็วมาก แม้ว่าผู้ใช้ส่วนใหญ่จะได้รับบริการที่ดีที่สุดโดยใช้ Spotlight จากแถบเมนู แต่ก็มีบางครั้งที่ Spotlight ไม่ทำงาน คุณต้องการพารามิเตอร์เพิ่มเติม คุณกำลังทำงานใน Terminal ใช้งานเครื่องระยะไกล หรือบางทีเพียงต้องการใช้ ฟังก์ชันการค้นหาทางเลือก
คุณโชคดี เราจะแสดงวิธีค้นหาไฟล์และโฟลเดอร์โดยตรงจากบรรทัดคำสั่งโดยใช้สองเคล็ดลับที่แตกต่างกัน วิธีแรกคือระบบปฏิบัติการที่ไม่เชื่อเรื่องพระเจ้า หมายความว่าคุณจะสามารถใช้ฟังก์ชันการค้นหากับ Mac OS X, Linux, BSD และรูปแบบยูนิกซ์อื่น ๆ อีกมากมาย ในขณะที่เคล็ดลับที่สองสำหรับการค้นหาใช้รูปแบบการค้นหาไฟล์จาก Mac เท่านั้น บรรทัดคำสั่ง มาอ่านและเรียนรู้วิธีใช้ความสามารถที่ยอดเยี่ยมเหล่านี้กัน
ค้นหาไฟล์จาก Command Line ด้วย find
คำสั่ง find นั้นรวดเร็วและใช้งานง่าย มันส่งตรงจากโลกยูนิกซ์ และใช้งานได้ใน Linux เช่นเดียวกับ Mac OS X หากคุณต้องการเรียนรู้สิ่งต่าง ๆ ที่สอดคล้องกัน แพลตฟอร์มการค้นหาเป็นทางเลือกที่ดี
โดยพื้นฐานแล้ว find สามารถใช้ได้ดังนี้:
หาพารามิเตอร์เส้นทาง
ตัวอย่างเช่น คุณสามารถค้นหาอะไรก็ได้ภายในโฮมไดเร็กทอรีของผู้ใช้ที่มีคำว่า "หน้าจอ" ในชื่อดังต่อไปนี้:
"ค้นหา ~ -ชื่อหน้าจอ"
คุณอาจต้องการส่งต่อผลลัพธ์ไปที่อื่น หากคุณคาดว่าจะได้รับผลตอบแทนสูง เช่น:
"หา ~ หน้าจอชื่อ>"
แน่นอน คุณสามารถค้นหาไฟล์เฉพาะที่ถูกฝังไว้ที่ใดที่หนึ่งในไดเร็กทอรี ตัวอย่างเช่น ค้นหาไฟล์ plist ในโฟลเดอร์ไลบรารีผู้ใช้:
find ~/Library/ -iname com.apple.syncedpreferences.plist"
คุณจะต้องเติมคำนำหน้า find ด้วย 'sudo' เพื่อค้นหาไดเร็กทอรีรูทและอยู่นอกสิทธิ์ของผู้ใช้ปัจจุบัน find ยังรองรับนิพจน์ ทำให้คุณสามารถค้นหาคำที่ตรงกัน อักขระตัวแทน ลำดับ และตัวเลือกขั้นสูงอื่นๆ
find มีประสิทธิภาพมาก แต่พลังนี้ทำให้เกิดความซับซ้อนอย่างรวดเร็ว ดังนั้นคำสั่ง mdfind แบบคลาสสิกน่าจะดีกว่าสำหรับผู้ใช้บรรทัดคำสั่งมือใหม่
การค้นหาไฟล์ที่ Command Line ด้วย mdfind
mdfind คืออินเทอร์เฟซเทอร์มินัลของ Spotlight ซึ่งหมายความว่าจะไม่ทำงานหาก Spotlight ถูกปิดใช้งาน ไม่ทำงานด้วยเหตุผลอื่น หรือสร้างดัชนีขึ้นใหม่ สมมติว่า Spotlight ทำงานตามที่ตั้งใจไว้ mdfind นั้นรวดเร็ว มีประสิทธิภาพ และเป็นมิตรกับผู้ใช้มากกว่าเดิมเล็กน้อย
ในระดับพื้นฐานที่สุด mdfind จะใช้ดังนี้:
mdfind -ชื่อไฟล์
ตัวอย่างเช่น หากต้องการค้นหาลักษณะที่ปรากฏทั้งหมดของ “Photo 1.PNG” คำสั่งจะเป็น:
mdfind -ชื่อ รูปภาพ 1.PNG"
เนื่องจาก mdfind เป็นเหมือน Spotlight จึงสามารถใช้เพื่อค้นหาเนื้อหาของไฟล์และโฟลเดอร์สำหรับไฟล์เฉพาะ การค้นหาเอกสารที่มีชื่อบุคคลทั้งหมดทำได้ดังนี้
"mdfind Will Pearson"
คล้ายกับคำสั่ง find การส่งผลลัพธ์ไปยังเพิ่มเติมอาจมีประโยชน์เมื่อจัดเรียงไฟล์จำนวนมาก เช่น:
"mdfind ส่งจาก | ของฉัน มากกว่า"
mdfind ยังสามารถจำกัดเฉพาะไดเร็กทอรีที่มีแฟล็ก -onlyin:
mdfind -onlyin ~/Library plist
สุดท้ายนี้ยังมีคำสั่ง 'locate' ซึ่งมีประสิทธิภาพมากและสามารถเชื่อมโยงกับการค้นหาได้ แต่ต้องเปิดใช้งานแยกต่างหาก
ทราบเทคนิคการค้นหาที่ยอดเยี่ยมอื่นๆ หรือวิธีการระบุตำแหน่งไฟล์สำหรับบรรทัดคำสั่งหรือไม่ แบ่งปันกับเราในความคิดเห็น