Windows Tips & News

ค้นหาไฟล์ที่มีข้อความเฉพาะใน Linux

click fraud protection

Linux ไม่ว่าคุณจะใช้ distro ใด มาพร้อมกับเครื่องมือ GUI จำนวนมากที่อนุญาตให้ค้นหาไฟล์ได้ ตัวจัดการไฟล์ที่ทันสมัยจำนวนมากรองรับการค้นหาไฟล์ในรายการไฟล์ อย่างไรก็ตาม มีหลายสถานการณ์เมื่อคุณจำเป็นต้องใช้คอนโซล เช่น ระหว่างเซสชัน SSH หรือเมื่อเซิร์ฟเวอร์ X ไม่เริ่มทำงาน นี่คือวิธีที่คุณสามารถค้นหาไฟล์ที่มีข้อความเฉพาะได้อย่างรวดเร็วโดยใช้เทอร์มินัล

หากคุณสามารถใช้ GUI ได้ การค้นหาไฟล์จะไม่เป็นปัญหา ในสภาพแวดล้อมเดสก์ท็อป XFCE ที่ฉันโปรดปราน ตัวจัดการไฟล์ Thunar อนุญาตให้ค้นหาไฟล์โดยพิมพ์ชื่อไฟล์โดยตรงในรายการไฟล์

อย่างไรก็ตาม ไม่มีตัวจัดการไฟล์ใดที่ฉันพยายามอนุญาตให้ค้นหาเนื้อหาไฟล์

หากต้องการข้ามข้อจำกัดนี้เมื่อทำงานในเซสชัน GUI คุณสามารถใช้ Catfish ปลาดุกเป็นเครื่องมือค้นหายอดนิยม อนุญาตให้ค้นหาเนื้อหาไฟล์ คุณต้องคลิกที่ไอคอนรูปเฟืองและเปิดใช้งานตัวเลือก ค้นหาไฟล์เนื้อหา.

อย่างไรก็ตาม เมื่อพูดถึงเทอร์มินัล คุณไม่สามารถใช้เครื่องมือกราฟิกใดๆ ได้ นอกจากนี้ ฉันพบว่าปลาดุกไม่มีประโยชน์และชอบเครื่องมือคอนโซลแบบคลาสสิกมากกว่า นี่คือวิธีการและเครื่องมือที่ฉันใช้

เพื่อค้นหาไฟล์ที่มีข้อความเฉพาะใน Linuxให้ทำดังต่อไปนี้

  1. เปิดแอปเทอร์มินัลที่คุณชื่นชอบ ขั้ว XFCE4 เป็นความชอบส่วนตัวของฉัน
  2. พิมพ์คำสั่งต่อไปนี้:
    find ./ -type f -exec grep -l "text to find" {} \;
  3. สิ่งนี้จะสร้างรายการไฟล์ที่มีส่วนข้อความที่ต้องการ

คำสั่ง find จะค้นหาไฟล์ที่เริ่มต้นจากไดเร็กทอรีปัจจุบัน "./" คุณสามารถระบุเส้นทางที่ต้องการแทนได้

ทางเลือก -พิมพ์f บอกให้ค้นหาเฉพาะไฟล์และไม่รวมไดเร็กทอรี นอกจากนี้ คุณสามารถค้นหาเฉพาะไฟล์บางประเภทโดยเพิ่มตัวเลือกดังนี้:
find ./ -type f -iname "*.txt" -exec grep -l "text to find" {} \;

ดูภาพหน้าจอต่อไปนี้:

NS -exec ตัวเลือกเรียกเครื่องมือ grep สำหรับแต่ละไฟล์ที่ตรงกันเพื่อตรวจสอบเนื้อหา หากพบข้อความในไฟล์ ชื่อของข้อความนั้นจะถูกเพิ่มไปยังผลลัพธ์ด้วยคำสั่ง -l ตัวเลือก.

ทางเลือก

มีทางเลือกอื่นนอกเหนือจากวิธีการที่อธิบายไว้ข้างต้น ก่อนอื่น คุณสามารถใช้ได้เฉพาะ grep เครื่องมือ. ลองใช้คำสั่งต่อไปนี้:

grep -iRl "ข้อความที่จะค้นหา" ./

  • -i หมายถึงกรณีข้อความละเว้น
  • -R ย่อมาจากการประมวลผลไฟล์แบบเรียกซ้ำ
  • -l ย่อมาจาก "แสดงชื่อไฟล์ ไม่ใช่ผลลัพธ์"

อย่างที่คุณเห็น วิธีนี้มีความยืดหยุ่นน้อยกว่า หา สั่งการ.

ผู้บัญชาการเที่ยงคืน

อีกวิธีหนึ่งที่ฉันมักใช้คือ Midnight Commander (mc) แอปตัวจัดการไฟล์คอนโซล ไม่เหมือนกับ find หรือ grep โดยค่าเริ่มต้น mc ไม่รวมอยู่ใน distros Linux ทั้งหมดที่ฉันได้ลอง คุณอาจต้องติดตั้งด้วยตัวเอง

หากต้องการค้นหาไฟล์ที่มีข้อความเฉพาะโดยใช้ Midnight Commander ให้เปิดแอปและกดตามลำดับต่อไปนี้บนแป้นพิมพ์:
Alt + กะ + ?
ซึ่งจะเปิดกล่องโต้ตอบการค้นหา

กรอกข้อมูลในส่วน "ชื่อไฟล์:" คุณสามารถระบุบางอย่างเช่น "*.txt" เพื่อค้นหาข้อความของคุณในไฟล์ข้อความเท่านั้น

ตอนนี้กรอก เนื้อหา: กล่อง. พิมพ์ข้อความที่มีไฟล์และกดปุ่ม Enter

จะค้นหาไฟล์ทั้งหมดที่ตรงกับเกณฑ์

แค่นั้นแหละ.

Quinto Black CT 1.5 ออกแล้ว – สกินสำหรับ Winamp

Quinto Black CT 1.5 ออกแล้ว – สกินสำหรับ Winamp

Winamp เป็นหนึ่งในเครื่องเล่นสื่อที่ได้รับความนิยมมากที่สุดสำหรับ Windows นอกจากนี้ยังเป็นหนึ่งใน...

อ่านเพิ่มเติม

Opera 50: บันทึกหน้าเป็น PDF

Opera 50: บันทึกหน้าเป็น PDF

ที่แนะนำ: คลิกที่นี่เพื่อแก้ไขปัญหา Windows และเพิ่มประสิทธิภาพระบบวันนี้ ทีมงานที่อยู่เบื้องหลัง...

อ่านเพิ่มเติม

ปิดใช้งานการแสดงคำจำกัดความแบบอินไลน์ใน Microsoft Edge

ปิดใช้งานการแสดงคำจำกัดความแบบอินไลน์ใน Microsoft Edge

Microsoft Edge เป็นแอปเว็บเบราว์เซอร์เริ่มต้นใน Windows 10 เป็นแอปสากล (UWP) ที่มีการสนับสนุนส่วน...

อ่านเพิ่มเติม