ฉันมีไฟล์ข้อความขนาดใหญ่มาก (หลายกิกะไบต์) ซึ่งฉันต้องการค้นหาสตริงบางอย่าง เมื่อใช้grepฉันได้รับมากกว่า 11,000 แมตช์ของสตริง แต่มีag1,500 ประมาณ เอาต์พุตของทั้งสองคำสั่งนั้นเหมือนกันจนถึงจุดที่agหยุด
ฉันตระหนักถึง-mตัวเลือกในagการกำหนดจำนวนการจับคู่สูงสุด แต่ค่าเริ่มต้นคือ 10,000 และดังนั้นจึงไม่ใช่ปัญหา
เพื่อแสดงสิ่งนี้นี่คือตัวอย่างของสิ่งที่เกิดขึ้น:
$ grep -i 'string' hugefile.txt | wc -l
11000
$ ag -i 'string' hugefile.txt | wc -l
1500
เอาต์พุตของทั้งสองคำสั่งนั้นเหมือนกับจำนวนที่ตรงกันเท่ากัน:
$ grep -m 1500 -i 'string' hugefile.txt > grep_output.txt
$ ag --no-numbers -i 'string' hugefile.txt > ag_output.txt
$ diff grep_output.txt ag_output.txt
(files identical)
ไม่agได้มีการป้อนข้อมูลขนาดสูงสุดโดยปริยายและถ้าเป็นเช่นนั้นก็เป็นไปได้ที่จะปรับเปลี่ยนนี้หรือไม่?