วิธีค้นหาไฟล์ทั้งหมดในฮาร์ดไดรฟ์


คำตอบ:


157

วิธีง่าย ๆfind / -type f -name ""ก็คือทำถ้าคุณรู้จักชื่อไฟล์ที่แน่นอน

find / -type f -iname "filename*" หากคุณต้องการจับคู่ไฟล์เพิ่มเติม (ไม่ต้องสนใจตัวพิมพ์ใหญ่และตัวพิมพ์ใหญ่)

หลีกเลี่ยง-typeตัวเลือกหากคุณต้องการค้นหาไดเรกทอรี ฯลฯ ดูคู่มือการค้นหาข้อมูลเพิ่มเติม หากต้องการดูคู่มือให้ออกคำสั่ง:

man find


แดงฉันใช้เวลาช้าลงไม่กี่วินาที: P จะแก้ไขเพื่อแสดงคำสั่งค้นหา
Nitin Venkatesh

2
นี่จะทำการค้นหาอุปกรณ์ที่ติดตั้งทั้งหมดเช่นกันอาจต้องการค้นหา/mount/hddyouwanttosearch
Callum Rogers

น่าสังเกตว่าการค้นหานั้นช้าจริง ๆ เมื่อเปรียบเทียบกับระบบการค้นหาที่จัดทำดัชนีเช่นค้นหา (แต่ยังมีประสิทธิภาพมากกว่า)
tumbleweed

48

คุณสามารถใช้locateเพื่อค้นหาคำสั่ง ทำไมคนใช้ค้นหาถ้าหางานทำ? เนื่องจากการค้นหานั้นเร็วกว่าการค้นหาเนื่องจากมันจะทำการค้นหาผ่านฐานข้อมูลของตำแหน่งที่จัดทำดัชนีเพื่อค้นหาไฟล์ / regex ของคุณ

ตัวอย่าง:

locate some-file.avi ค้นหาผ่านฐานข้อมูลเกือบทุกไฟล์บนดิสก์เพื่อหาไฟล์ชื่อ "some-file.avi"

locate -i "some-file.avi" จะไม่สนใจกรณีของไฟล์ที่คุณกำลังค้นหา

locate -i "*.txt" จะแสดงรายการตำแหน่งของไฟล์ทั้งหมดที่มีนามสกุล **. txt * ในระบบของคุณ

man locate สำหรับข้อมูลเพิ่มเติมเกี่ยวกับไฟล์

คุณอาจต้องเรียกใช้updatedbก่อนเพื่อให้แน่ใจว่าฐานข้อมูลดัชนีเป็นปัจจุบันมิฉะนั้น 'ค้นหา' อาจไม่ส่งคืนสิ่งที่คุณต้องการ


โปรดทราบว่าupdatedbจะต้องเรียกใช้เป็นราก
RafałCieślak

5
นี่เป็นวิธีเร็วกว่าเจอวัวศักดิ์สิทธิ์ ... ขอบคุณ!
anon58192932

หากupdatedbเพิ่ม/เข้าไปในดัชนีตามค่าเริ่มต้นแล้วจะยังเร็วกว่าได้find /อย่างไร?
Hashim

14

เริ่มต้นด้วยการคลิกที่ไอคอน "โฮมโฟลเดอร์" ในตัวเรียกใช้งาน

ป้อนคำอธิบายรูปภาพที่นี่

ในหน้าต่างที่เปิดขึ้นคลิก "ค้นหา"

ป้อนคำอธิบายรูปภาพที่นี่

พิมพ์สิ่งที่คุณต้องการค้นหาในช่องจากนั้นกด Enter ป้อนคำอธิบายรูปภาพที่นี่

ใต้ส่วนแสดงรายการเลือกฮาร์ดไดรฟ์ของคุณจากนั้นคลิกโหลดซ้ำ

ป้อนคำอธิบายรูปภาพที่นี่

ผลลัพธ์จะปรากฏขึ้น หวังว่าจะช่วย!


3
ผู้ชายที่ถามว่าระบุว่าเขาใช้เซิร์ฟเวอร์ดังนั้นจึงไม่มี GUI แต่นั่นเป็นคำตอบที่ยอดเยี่ยม!
RafałCieślak

8

หากคุณกำลังมองหาสตริงภายในไฟล์คุณสามารถใช้ grep นี่คือคำสั่งตัวอย่าง:

grep -r -i "some string" /home/yourusername

จะพบ"some string"ใน/home/yourusernameไดเรกทอรี การค้นหาจะไม่สนใจ case ( -i) และ recurse ไดเรกทอรี่ ( -r) คุณสามารถใช้/เป็นไดเรกทอรีเพื่อค้นหาในไดเรกทอรีทั้งหมด แต่อาจไม่มีประสิทธิภาพมาก


5

บน Ubuntu ฉันรู้ว่าทุกคนต้องการมีความอดทนในการใช้บรรทัดคำสั่งตลอดเวลาและฉันก็เคยเป็นเช่นนั้นมาก่อน แต่ฉันชอบเครื่องมือ "ค้นหาไฟล์ ... " ของ Gnome ฉันคิดว่ามันยอดเยี่ยม


3
ดีฉันบนเซิร์ฟเวอร์
Blankman

คุณควรลองค้นหาด้วย KDE มันจะดีกว่าคำพังเพย ฉันยังคงรอให้ Nautilus ติดต่อกับความอเนกประสงค์ที่ระบบค้นหาของ KDE Dolphin / Konqueror นั้นดีกว่าเพราะมัน
Luis Alvarado

ใช่ฉันคิดว่าจะเปลี่ยนมาใช้ Kubuntu จริงๆ ฉันจะดูมัน
djangofan

3

สำหรับการตั้งค่าเดสก์ท็อปติดตั้ง "gnome-search-tool"
sudo apt-get install gnome-search-tool

อย่าติดตั้งในเซิร์ฟเวอร์มันจะติดตั้งแพคเกจเดสก์ท็อปอูบุนตูด้วย
ขอบคุณ @Rinzwind ที่ชี้ให้เห็นว่า

ตัวกรองรวม:

  1. เลือกโฟลเดอร์ที่คุณต้องการค้นหา ในกรณีนี้\
  2. มีข้อความ - นี่คือชื่อไฟล์
  3. วันที่แก้ไข - น้อยกว่าหรือมากกว่าในจำนวนวัน
  4. ขนาดไฟล์ - อย่างน้อยที่สุดหรืออย่างน้อยขนาดที่ระบุ คุณยังสามารถค้นหาไฟล์ว่างได้
  5. เจ้าของไฟล์ - ผู้ใช้กลุ่มหรือเจ้าของที่ไม่รู้จัก
  6. นิพจน์ทั่วไป - จับคู่นิพจน์ทั่วไป
  7. คุณสามารถเลือกที่จะแสดงไฟล์ที่ซ่อนอยู่ตามลิงค์สัญลักษณ์หรือยกเว้นระบบไฟล์อื่น ๆ

ป้อนคำอธิบายรูปภาพที่นี่


@Rinzwind คำถามคือTrying to locate a file, how can I search the entire hard drive for a file?ไม่มี 'เซิร์ฟเวอร์ติดตั้ง' ที่ใดก็ได้ ...
Parto

@Rinzwind Hahah ทำได้ดีนี่. ให้ฉันแก้ไขคำตอบและบอกว่านี่เป็นเพียงการตั้งค่าเดสก์ท็อปเท่านั้น
Parto

มี upvote ในทางกลับกัน :)
Rinzwind

2

หากคุณไม่ต้องการจำfindพารามิเตอร์ (ซึ่งมีประสิทธิภาพมาก) คุณสามารถติดตั้งจาก repos อย่างเป็นทางการ:

  • kfind - ยูทิลิตี้ค้นหาไฟล์
  • gnome-search-tool - เครื่องมือ GNOME สำหรับค้นหาไฟล์
  • catfish - เครื่องมือค้นหาไฟล์ที่สามารถกำหนดค่าผ่านทางบรรทัดคำสั่ง

ทั้งสามคนที่ดี แต่ผมพบว่าkfindที่ดีที่สุด

จากชุมชน Ubuntu ช่วยเหลือวิกิคุณอาจพบว่ามีประโยชน์:

  • dpkg -L | - listfiles ... แสดงรายการไฟล์ที่เป็นเจ้าของโดยแพคเกจ
  • dpkg -S | - ค้นหา ... ค้นหาไฟล์ที่เป็นเจ้าของแพคเกจ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.