ความแตกต่างระหว่าง Egrep และ Fgrep ความแตกต่างระหว่าง

Anonim

Egrep vs. Fgrep

Egrep และ fgrep เป็นส่วนหนึ่งของตระกูล grep ของคำสั่ง ทั้ง egrep และ fgrep ใช้ใน Linux เป็นคำสั่งของผู้ใช้เพื่อให้การค้นหาง่ายขึ้นสำหรับการเจาะเข้าไปในไฟล์ข้อความล้วนเป็นพัน ๆ เส้น คำสั่งทั้งสองแบบคือ DOS ค้นหาข้อความและไฟล์ค้นหาไดเรกทอรีและต้นไม้ไดเรกทอรีสำหรับข้อความหรือคำเฉพาะ

grep คือคำสั่งพื้นฐานสำหรับทั้ง egrep และ fgrep "Grep" หมายถึง "การพิมพ์นิพจน์ทั่วไปทั่วโลก" grep สนับสนุนคำสั่งนิพจน์ปกติในการค้นหาคำและคำศัพท์

Egrep เป็นส่วนขยายของคำสั่ง grep คำสั่งของผู้ใช้เพื่อค้นหาสตริงของอักขระในบรรทัดและหลายรูปแบบภายในไฟล์ข้อความ เรียกอีกอย่างหนึ่งว่า grep แบบขยายเพื่อค้นหาอาร์กิวเมนต์ที่มีลวดลายมากขึ้น Egrep ใช้เมื่อเอกสารมีลักษณะเป็น "นิพจน์ขยาย "ในการใช้คำสั่งนี้อักขระพิเศษเช่น +,?,!, และอักขระอื่น ๆ และลำดับที่มีประโยชน์จะส่งผลแทนการแสดงข้อผิดพลาดทางไวยากรณ์ เหตุการณ์นี้เกิดขึ้นเนื่องจากคำสั่ง egrep ตีความว่าเป็นส่วนหนึ่งของนิพจน์ทั่วไป

นิพจน์เช่นเครื่องหมายบวกเครื่องหมายคำถามแถบแนวตั้งและวงเล็บมักใช้เป็นตัวดำเนินการที่ช่วยในการระบุผลลัพธ์ นิพจน์จะถูกวางไว้หลังคำค้นหาหรือนิพจน์ทั่วไป ต่อไปนี้อธิบายถึงฟังก์ชันของโอเปอเรเตอร์:

นิพจน์ทั่วไปและเครื่องหมายบวกยอมให้ได้ผลการค้นหาปกติอย่างน้อยหนึ่งรายการ

นิพจน์ทั่วไปก่อนเครื่องหมายคำถามจะทำให้ตรงกับศูนย์หรือตรงกับคำค้นหาที่ระบุ

แถบแนวตั้งใช้เพื่อแยกนิพจน์ทั่วไปหรือคำค้นหาหลายค่า

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

ในการเข้ารหัสคำสั่ง "d" ใน Linux จะแสดงเป็น "grep-e" ? egrep หรือ egrep plus สำหรับคำหรือคำที่ต้องการค้นหาภายในไฟล์ ไม่ จำกัด จำนวนคำค้นหาที่สามารถรวมได้

ในขณะเดียวกัน fgrep เป็นส่วนเสริมของ egrep ใน Linux จะมีข้อความว่า "grep-f" หรือที่เรียกว่า grep fixed-string มันคล้ายกับ grep เนื่องจากไม่รู้จักหรือตีความปกติหรือการแสดงออกพิเศษหรือตัวอักษร เนื่องจากไม่เข้าใจความสามารถในการขยายของนิพจน์ทั่วไปจึงข้ามผ่านอักขระเหล่านี้ระหว่างการค้นหา แสดงเฉพาะคำและคำที่ตรงกันและไม่มีอะไรอื่น

Fgrep ตีความเอกสารเป็นรายการสตริงที่กำหนด กระบวนการค้นหาของมันเร็วมากเมื่อเทียบกับคำสั่งอื่น ๆ เพราะใช้อัลกอริทึมการจับคู่สตริงของ Aho-Corasick

สรุป:

1. ทั้ง egrep และ fgrep ได้มาจากคำสั่ง grep พื้นฐาน "egrep" ย่อมาจาก "extended grep" ในขณะที่ fgrep ย่อมาจาก "grep fixed-string"“

2 คำสั่ง egrep ใช้เพื่อค้นหารูปแบบต่างๆภายในไฟล์หรือที่เก็บข้อมูลประเภทอื่น ๆ ในขณะที่ frgrep ใช้เพื่อค้นหาสตริง

3 คำว่า "egrep" โดยทั่วไปจะแสดงเป็น "grep-e" ในขณะที่ "fgrep" ถูกเข้ารหัสเป็น "grep-f" “

4 คำสั่ง egrep ช่วยให้สามารถใช้นิพจน์ปกติที่ขยายได้ในขณะที่ grep ค้นหาเฉพาะคำที่ตรงกันหรือคำที่ผู้ใช้ระบุไว้ในคำสั่ง frep ไม่รู้จักหรือเข้าใจนิพจน์ทั่วไปปกติหรือ extended

5 เมื่อเทียบกับคำสั่งการค้นหาอื่นกระบวนการค้นหา fgrep จะเร็วมากเนื่องจากเกี่ยวข้องกับคำค้นหาที่ให้เท่านั้น

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