มันเร็วกว่าที่จะมองหาคำค้นหายาวหรือสั้น? หรือส่งผลกระทบต่อความเร็วเลยหรือ? กล่าวอีกนัยหนึ่งคุณควรสร้างข้อความค้นหาที่แน่นอนที่สุดเท่าที่จะเป็นไปได้หรือไม่
มีไฟล์มากกว่า 100,000 ไฟล์และแต่ละไฟล์มีข้อมูลอยู่ระหว่าง 20 และมากกว่า 5,000 แถวของข้อมูล โดยปกติ grep จะใช้เพื่อค้นหาหนึ่งอินสแตนซ์ของคำค้นหา
สมมติว่าคำค้นหาคือSEARCHTERM
และมันจะอยู่ในแถวเช่นนี้:
NAD+DP+1234567890:92++UNIQUE+NAME+SEARCHTERM++12345+FI'
การค้นหา "SEARCH" หรือ "SEARCHTERM" เร็วกว่านี้หรือไม่ สมมติว่าในกรณีนี้เราไม่สนใจว่าเราพบการแข่งขันในสายอื่น ๆ ที่ไม่เกี่ยวข้องหรือไม่
นี่คือวิธีที่ฉันทำในปัจจุบัน:
grep NAD+DP 123* | grep SEARCHTERM
แต่ฉันพบว่ามันค่อนข้างช้า ปกติจะใช้เวลาประมาณ 3-5 นาทีในการค้นหาข้อมูลแม้ว่าฉันจะรู้ชื่อไฟล์คร่าวๆซึ่ง จำกัด ช่วงไว้ที่ประมาณ 10,000 ไฟล์
ดังนั้นข้อความค้นหาที่ยาวขึ้นหรือสั้นลงจะช่วยได้หรือไม่ เท่าที่ฉันรู้ grep มองหา "บล็อก" ของคำที่มีความยาวแน่นอน?