วิธีค้นหาไฟล์ใน Linux

ผู้เขียน: Ellen Moore
วันที่สร้าง: 17 มกราคม 2021
วันที่อัปเดต: 29 มิถุนายน 2024
Anonim
How to Find Files in Linux | Learning Terminal
วิดีโอ: How to Find Files in Linux | Learning Terminal

เนื้อหา

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

ขั้นตอน

วิธีที่ 1 จาก 3: ค้นหายูทิลิตี้

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

    ค้นหา -iname "ชื่อไฟล์"

    • เข้า -ฉันชื่อ แทน -ชื่อเพื่อละเว้นตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ในชื่อไฟล์ที่ป้อน ทีม -ชื่อ คำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่
  2. 2 เริ่มค้นหาในไดเร็กทอรีราก หากต้องการเริ่มการค้นหาทั้งระบบ ให้เพิ่มตัวแก้ไขลงในข้อความค้นหา /... ในกรณีนี้ คำสั่ง หา จะค้นหาไฟล์ในไดเร็กทอรีทั้งหมดที่เริ่มต้นจากรูท

    ค้นหา / -iname "ชื่อไฟล์"

    • คุณสามารถเริ่มค้นหาในไดเร็กทอรีเฉพาะ การทำเช่นนี้แทนที่ / ไปยังเส้นทางไดเร็กทอรี เช่น / home / max.
    • สามารถใช้ได้ . แทน /เพื่อค้นหาไฟล์ในไดเร็กทอรีปัจจุบันและไดเร็กทอรีย่อยเท่านั้น
  3. 3 ใช้สัญลักษณ์ทั่วไป*เพื่อค้นหาไฟล์ที่มีชื่อตรงกับส่วนของคำขอ การใช้สัญลักษณ์ทั่วไป * คุณสามารถค้นหาไฟล์ที่ไม่รู้จักชื่อเต็ม หรือค้นหาไฟล์ทั้งหมดที่มีนามสกุลเฉพาะ

    find / home / max -iname " *. conf"

    • คำสั่งนี้จะค้นหาไฟล์ทั้งหมดที่มีนามสกุล .conf ในโฟลเดอร์ Max user (และโฟลเดอร์ย่อย)
    • ใช้คำสั่งนี้เพื่อค้นหาไฟล์ทั้งหมดที่ตรงกับส่วนของแบบสอบถาม ตัวอย่างเช่น หากคุณมีไฟล์ที่เกี่ยวข้องกับ WikiHow จำนวนมากในคอมพิวเตอร์ของคุณ ให้ค้นหาไฟล์ทั้งหมดโดยพิมพ์ " * วิกิ *".
  4. 4 ทำให้การจัดการผลการค้นหาง่ายขึ้น หากมีผลการค้นหามากเกินไป เป็นการยากที่จะหาไฟล์ที่คุณต้องการ ใช้สัญลักษณ์ |เพื่อกรองผลการค้นหาให้น้อยลง ซึ่งจะทำให้ง่ายต่อการดูและกรองผลการค้นหาของคุณ

    find / home / max -iname " *. conf" | น้อย

  5. 5 ค้นหารายการเฉพาะ ใช้ตัวปรับแต่งเพื่อแสดงเฉพาะรายการในผลการค้นหา คุณสามารถค้นหาไฟล์ปกติ (NS) ไดเร็กทอรี (NS) ลิงก์สัญลักษณ์ (l), อักขระ I / O อุปกรณ์ (กับ) และบล็อกอุปกรณ์ (NS).

    ค้นหา / -type f -iname "ชื่อไฟล์"

  6. 6 กรองผลการค้นหาของคุณตามขนาดไฟล์ หากคุณมีไฟล์หลายไฟล์ที่มีชื่อคล้ายกันในคอมพิวเตอร์ของคุณ แต่คุณทราบขนาดของไฟล์ที่กำลังมองหา ให้กรองผลการค้นหาตามขนาดไฟล์

    ค้นหา / -ขนาด + 50M -iname "ชื่อไฟล์"

    • คำสั่งนี้จะค้นหาไฟล์ทั้งหมดที่มีขนาดใหญ่กว่า 50 MB ใช้ตัวดัดแปลง + หรือ -เพื่อแสดงขนาดที่เพิ่มขึ้นหรือลดลง ถ้าตัวดัดแปลง + หรือ - ไม่ คำสั่งจะค้นหาไฟล์ที่มีขนาดเท่ากันทุกประการกับขนาดที่ระบุ
    • ผลการค้นหาสามารถกรองตามไบต์ () กิโลไบต์ (k) เมกะไบต์ (NS) กิกะไบต์ (NS) หรือบล็อกขนาด 512 ไบต์ (NS). โปรดทราบว่าตัวดัดแปลงที่แสดงจะคำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่
  7. 7 ใช้ตัวดำเนินการเชิงตรรกะ (ตัวดำเนินการบูลีน) เพื่อรวมตัวกรองการค้นหา สามารถใช้โอเปอเรเตอร์ได้ -และ, -หรือ, -ไม่เพื่อรวมข้อความค้นหาต่างๆ ไว้ในข้อความค้นหาเดียว

    ค้นหา / travelphotos -type f -size + 200k -not -iname " * 2015 *"

    • คำสั่งนี้จะค้นหาไฟล์ในโฟลเดอร์ "Travelphotos" ที่มีขนาดใหญ่กว่า 200 KB และไม่มีหมายเลข 2015 ในชื่อ
  8. 8 ค้นหาไฟล์ตามเจ้าของหรือสิทธิ์ หากคุณต้องการค้นหาไฟล์ที่เป็นของผู้ใช้รายใดรายหนึ่งหรือไฟล์ที่มีสิทธิ์การเข้าถึงเฉพาะ คุณสามารถจำกัดการค้นหาให้แคบลงได้

    ค้นหา / -user max -iname "ชื่อไฟล์" ค้นหา / - ​​กลุ่มผู้ใช้ -iname "ชื่อไฟล์" ค้นหา / -perm 777 -iname "ชื่อไฟล์"

    • คำสั่งข้างต้นจะค้นหาไฟล์สำหรับผู้ใช้เฉพาะกลุ่มหรือมีสิทธิ์การเข้าถึงเฉพาะ คุณยังสามารถละชื่อไฟล์ในแบบสอบถามเพื่อค้นหาไฟล์ทั้งหมดที่ตรงกับเกณฑ์ที่ระบุ ตัวอย่างเช่น คำสั่ง ค้นหา / -ดัด 777 จะค้นหาไฟล์ทั้งหมดที่มีสิทธิ์ 777 (ไม่จำกัด)
  9. 9 รวมคำสั่งเพื่อดำเนินการเฉพาะหลังจากการค้นหาไฟล์เสร็จสิ้น ทีมงาน หา สามารถใช้ร่วมกับคำสั่งอื่น ๆ ที่จะประมวลผลไฟล์ที่พบ การทำเช่นนี้ระหว่างทีม หา และด้วยคำสั่งที่สอง enter -execและที่ท้ายบรรทัดให้ป้อน {} ;

    หา. -type f -perm 777 -exec chmod 755 {} ;

    • คำสั่งนี้จะพบในไดเร็กทอรีปัจจุบัน (และไดเร็กทอรีย่อย) ไฟล์ทั้งหมดที่มีสิทธิ์ 777 แล้วใช้คำสั่ง chmod สิทธิ์การเข้าถึงจะเปลี่ยนเป็น 755

วิธีที่ 2 จาก 3: ค้นหายูทิลิตี้

  1. 1 ติดตั้งยูทิลิตี้ค้นหา... ยูทิลิตี้นี้เร็วกว่ายูทิลิตี้ หาเพราะมันไม่ได้สแกนระบบไฟล์จริงๆ อย่างไรก็ตาม ลินุกซ์บางรุ่นไม่ได้มาพร้อมกับยูทิลิตี้นี้ ค้นหาดังนั้นให้ป้อนคำสั่งต่อไปนี้เพื่อติดตั้ง:
    • เข้า sudo apt-get update แล้วกด ↵ ป้อน.
    • บน Debian และ Ubuntu ให้ทำดังนี้: enter sudo apt-get ติดตั้ง mlocate แล้วกด ↵ ป้อน... ถ้า ค้นหา ติดตั้งแล้วข้อความจะปรากฏขึ้น mlocate เป็นเวอร์ชั่นใหม่ล่าสุดแล้ว (ติดตั้งเวอร์ชันล่าสุด)
    • บน Arch Linux ให้ใช้ตัวจัดการแพ็คเกจ pacman: pacman -Syu mlocate
    • บน Gentoo ใช้การปรากฏ: โผล่ออกมา mlocate
  2. 2 อัพเดตฐานข้อมูลยูทิลิตี้ค้นหา... ยูทิลิตีนี้จะไม่สามารถค้นหาสิ่งใดได้หากไม่มีฐานข้อมูลที่สร้างและอัปเดตก่อนหน้านี้ (ซึ่งเก็บสแน็ปช็อตจากระบบไฟล์) ฐานข้อมูลอัพเดททุกวันในโหมดอัตโนมัติ แต่สามารถทำได้ด้วยตนเอง อัพเดทฐานข้อมูลด้วยตนเองเพื่อเริ่มทำงานกับ .ทันที ค้นหา.
    • เข้า sudo updatedb แล้วกด ↵ ป้อน.
  3. 3 ใช้.ค้นหาเพื่อทำการค้นหาอย่างง่าย คุณประโยชน์ ค้นหา ทำงานได้เร็วแต่ใช้งานไม่ได้เท่ายูทิลิตี้ หา... ทีม ค้นหา จัดการคำค้นหาง่ายๆ คล้ายกับคำสั่ง หา.

    ค้นหา -i " *. jpg"

    • คำสั่งนี้จะค้นหา (ในทั้งระบบ) ไฟล์ทั้งหมดที่มีนามสกุล .webp... ที่นี่สัญลักษณ์ทั่วไป * ทำงานเหมือนทีม หา.
    • ชอบทีม หา, ตัวดัดแปลง -ผม ละเว้นกรณีของคำค้นหา
  4. .
  5. 4 จำกัดจำนวนผลการค้นหา หากมีผลการค้นหามากเกินไป ให้ย่อด้วย modifier -NS และตัวเลขที่กำหนดจำนวนผลการค้นหาที่แสดง

    ค้นหา -n 20 -i " *. jpg"

    • คำสั่งนี้จะแสดงผลลัพธ์ 20 รายการแรกที่ตรงกับคำค้นหาของคุณ
    • คุณยังสามารถใช้สัญลักษณ์ |เพื่อกรองผลการค้นหาให้น้อยลง ซึ่งจะทำให้ง่ายต่อการดูผลการค้นหา

วิธีที่ 3 จาก 3: ค้นหาข้อความในไฟล์

  1. 1 ใช้คำสั่งgrepเพื่อค้นหาข้อความในไฟล์ ทำเช่นนี้เพื่อค้นหาไฟล์ที่มีวลีหรือบรรทัดเฉพาะ รูปแบบคำสั่งพื้นฐาน grep ดังนี้

    grep -r -i "คำค้นหา" / เส้นทาง / ถึง / ไดเรกทอรี /

    • ตัวดัดแปลง -NS ทำให้การค้นหาเป็นแบบเรียกซ้ำ ดังนั้นไฟล์ใดๆ ที่มีสตริงจากคำค้นหาจะพบในไดเร็กทอรีปัจจุบัน (และไดเร็กทอรีย่อยทั้งหมด)
    • ตัวดัดแปลง -ผม แสดงว่าคำขอไม่คำนึงถึงขนาดตัวพิมพ์ หากต้องการคำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ อย่าป้อนตัวแก้ไข -ผม.
  2. 2 ซ่อนข้อความส่วนเกิน เมื่อดำเนินการคำสั่ง grep (ตามที่อธิบายไว้ข้างต้น) ชื่อไฟล์และข้อความที่มีวลีหรือสตริงที่เน้นซึ่งระบุไว้ในคำค้นหาจะแสดงบนหน้าจอ คุณสามารถซ่อนข้อความดังกล่าวเพื่อแสดงเฉพาะชื่อไฟล์และเส้นทางได้ เมื่อต้องการทำเช่นนี้ ให้ป้อนคำสั่งต่อไปนี้:

    grep -r -i "คำค้นหา" / เส้นทาง / ถึง / ไดเรกทอรี / | ตัด -d: -f1

  3. 3 ซ่อนข้อความแสดงข้อผิดพลาด ทีม grep แสดงข้อความแสดงข้อผิดพลาดหากพยายามเข้าถึงโฟลเดอร์โดยไม่ได้รับสิทธิ์ที่เหมาะสม หรือจบลงที่โฟลเดอร์ว่าง ข้อความดังกล่าวสามารถถูกส่งไปยัง / dev / null เพื่อไม่ให้ปรากฏบนหน้าจอ

    grep -r -i "คำค้นหา" / path / to / directory / 2> / dev / null