นี่คือคำสั่ง pcre2grep ที่สามารถเรียกใช้ในผู้ให้บริการโฮสต์ฟรีของ OnWorks โดยใช้เวิร์กสเตชันออนไลน์ฟรีของเรา เช่น Ubuntu Online, Fedora Online, โปรแกรมจำลองออนไลน์ของ Windows หรือโปรแกรมจำลองออนไลน์ของ MAC OS
โครงการ:
ชื่อ
pcre2grep - grep ที่มีนิพจน์ทั่วไปที่เข้ากันได้กับ Perl
เรื่องย่อ
พีซีเร2เกรป [ตัวเลือก] [ยาว ตัวเลือก] [ลวดลาย] [เส้นทาง1 เส้นทาง2 ... ]
DESCRIPTION
พีซีเร2เกรป ค้นหาไฟล์สำหรับรูปแบบอักขระในลักษณะเดียวกับคำสั่ง grep อื่น ๆ
ทำ แต่ใช้ไลบรารีนิพจน์ทั่วไป PCRE2 เพื่อรองรับรูปแบบที่เป็น
เข้ากันได้กับนิพจน์ทั่วไปของ Perl 5 See ไวยากรณ์ pcre2(3) เพื่อความรวดเร็ว-
สรุปอ้างอิงของไวยากรณ์รูปแบบหรือ pcre2แบบ(3) สำหรับคำอธิบายแบบเต็มของ
ไวยากรณ์และความหมายของนิพจน์ทั่วไปที่ PCRE2 รองรับ
รูปแบบ ไม่ว่าจะระบุไว้ในบรรทัดคำสั่งหรือในไฟล์แยกต่างหาก จะไม่มี
ตัวคั่น ตัวอย่างเช่น:
pcre2grep วันพฤหัสบดี /etc/motd
หากคุณพยายามใช้ตัวคั่น (เช่น โดยล้อมรอบรูปแบบด้วยเครื่องหมายทับ เช่น
เป็นเรื่องปกติในสคริปต์ Perl) พวกมันถูกตีความว่าเป็นส่วนหนึ่งของรูปแบบ คำพูดสามารถของ
ใช้สำหรับกำหนดรูปแบบในบรรทัดคำสั่งเพราะถูกตีความโดย
เชลล์ และต้องใช้เครื่องหมายคำพูดจริง ๆ หากรูปแบบมีพื้นที่ว่างหรือ shell
อักขระเมตา
อาร์กิวเมนต์แรกที่ตามหลังการตั้งค่าตัวเลือกใดๆ จะถือว่าเป็นรูปแบบเดียวที่จะเป็น
จับคู่เมื่อไม่ -e ไม่ -f มีอยู่ ในทางกลับกัน เมื่อหนึ่งหรือทั้งสองตัวเลือกนี้
ใช้เพื่อระบุรูปแบบ อาร์กิวเมนต์ทั้งหมดถือเป็นชื่อพาธ อย่างน้อยหนึ่งอย่าง -e,
-fหรือต้องระบุรูปแบบอาร์กิวเมนต์
หากไม่มีการระบุไฟล์ พีซีเร2เกรป อ่านอินพุตมาตรฐาน อินพุตมาตรฐานยังสามารถ
ถูกอ้างอิงด้วยชื่อที่ประกอบด้วยยัติภังค์เดียว ตัวอย่างเช่น:
pcre2grep บางรูปแบบ file1 - file3
ไฟล์อินพุตจะถูกค้นหาทีละบรรทัด โดยค่าเริ่มต้น แต่ละบรรทัดที่ตรงกับรูปแบบคือ
คัดลอกไปยังเอาต์พุตมาตรฐาน และหากมีมากกว่าหนึ่งไฟล์ ชื่อไฟล์จะเป็น output
ที่จุดเริ่มต้นของแต่ละบรรทัด ตามด้วยโคลอน อย่างไรก็ตาม มีตัวเลือกที่สามารถ
เปลี่ยนวิธีการ พีซีเร2เกรป ประพฤติ โดยเฉพาะอย่างยิ่ง -M ตัวเลือกทำให้สามารถค้นหา
สตริงที่ขยายขอบเขตของเส้น สิ่งที่กำหนดขอบเขตของเส้นจะถูกควบคุมโดย -N
(--บรรทัดใหม่) ตัวเลือก
จำนวนหน่วยความจำที่ใช้สำหรับบัฟเฟอร์ไฟล์ที่กำลังสแกนถูกควบคุมโดยa
พารามิเตอร์ที่สามารถตั้งค่าได้โดย --บัฟเฟอร์-ขนาด ตัวเลือก. ค่าเริ่มต้นสำหรับสิ่งนี้
พารามิเตอร์ถูกระบุเมื่อ พีซีเร2เกรป ถูกสร้างขึ้นโดยค่าเริ่มต้นเริ่มต้นคือ 20K อา
บล็อกของหน่วยความจำที่ใช้ขนาดนี้สามครั้ง (เพื่อให้บัฟเฟอร์ "ก่อน" และ "หลัง"
เส้น) เกิดข้อผิดพลาดหากบรรทัดล้นบัฟเฟอร์
รูปแบบต้องไม่เกิน 8K หรือ BUFSIZ ไบต์ แล้วแต่จำนวนใดจะมากกว่า BUFSIZ คือ
กำหนดไว้ใน . เมื่อมีมากกว่าหนึ่งรูปแบบ (ระบุโดยการใช้ -e
และ / หรือ -f) แต่ละรูปแบบใช้กับแต่ละบรรทัดตามลำดับที่กำหนดไว้
เว้นแต่ว่า .ทั้งหมด -e รูปแบบจะถูกทดลองก่อน -f รูปแบบ
ตามค่าเริ่มต้น ทันทีที่รูปแบบหนึ่งตรงกับเส้น จะไม่มีการพิจารณารูปแบบเพิ่มเติม
อย่างไรก็ตามหาก --สี (หรือ --สี) ใช้เพื่อกำหนดสีให้กับสตริงย่อยที่ตรงกัน หรือ if --เท่านั้น-
การจับคู่, --ไฟล์ออฟเซ็ตหรือ --เส้นออฟเซ็ต ใช้เพื่อส่งออกเฉพาะส่วนของบรรทัด
ที่ตรงกัน (ทั้งที่แสดงตามตัวอักษรหรือแบบออฟเซ็ต) การสแกนจะดำเนินการต่อทันที
ต่อจากแมตช์ เพื่อที่จะได้แมตช์ต่อไปในแนวเดียวกัน ถ้ามี
หลายรูปแบบ ทั้งหมดจะถูกลองในส่วนที่เหลือของเส้น แต่รูปแบบที่
ทำตามที่จับคู่ไม่ได้ลองในส่วนก่อนหน้าของบรรทัด
ลักษณะการทำงานนี้หมายความว่าลำดับที่มีการระบุรูปแบบหลายแบบสามารถส่งผลได้
เอาต์พุตเมื่อใช้ตัวเลือกใดตัวเลือกหนึ่งข้างต้น นี่ไม่ใช่พฤติกรรมเดียวกับ .อีกต่อไป
GNU grep ซึ่งขณะนี้สามารถแสดงการแข่งขันก่อนหน้าสำหรับรูปแบบในภายหลัง (ตราบใดที่
ไม่มีการทับซ้อนกัน)
ยอมรับรูปแบบที่สามารถจับคู่สตริงว่างได้ แต่การจับคู่สตริงว่างจะไม่ตรงกัน
ได้รับการยอมรับ ตัวอย่างคือรูปแบบ "(super)?(man)?" ซึ่งมีส่วนประกอบทั้งหมด
ไม่จำเป็น. รูปแบบนี้พบการเกิดขึ้นทั้งหมดของทั้ง "สุดยอด" และ "มนุษย์" ผลลัพธ์ต่างกัน
จากการจับคู่กับ "super|man" เมื่อแสดงเฉพาะสตริงย่อยที่ตรงกัน
ถ้า LC_ALL or LC_CTYPE ตัวแปรสภาพแวดล้อมถูกตั้งค่า พีซีเร2เกรป ใช้ค่าในการตั้งค่า a
สถานที่เมื่อเรียกไลบรารี PCRE2 ดิ --ภาษา สามารถใช้ตัวเลือกเพื่อแทนที่สิ่งนี้ได้
การสนับสนุน สำหรับ บีบอัด ไฟล์
สามารถเรียบเรียงได้ พีซีเร2เกรป เพื่อให้มันใช้ ลิบ or libbz2 เพื่ออ่านไฟล์ที่มี
ชื่อลงท้ายด้วย .gz or . Bz2ตามลำดับ คุณสามารถค้นหาว่าไบนารีของคุณรองรับหรือไม่
สำหรับไฟล์ประเภทใดประเภทหนึ่งหรือทั้งสองประเภทโดยเรียกใช้ด้วยปุ่ม --ช่วยด้วย ตัวเลือก. ถ้า
ไม่มีการสนับสนุนที่เหมาะสม ไฟล์จะถือว่าเป็นข้อความธรรมดา อินพุตมาตรฐานคือ
ได้รับการปฏิบัติเสมอมา
ไบนารี่ ไฟล์
โดยค่าเริ่มต้น ไฟล์ที่มีไบนารีศูนย์ไบต์ภายใน 1024 ไบต์แรกคือ
ระบุว่าเป็นไฟล์ไบนารีและประมวลผลเป็นพิเศษ (GNU grep ยังระบุไบนารี
ไฟล์ในลักษณะนี้) ดู --ไบนารีไฟล์ ตัวเลือกสำหรับวิธีการเปลี่ยนวิธีการ
ไฟล์ไบนารีได้รับการจัดการ
OPTIONS
ลำดับที่ตัวเลือกบางตัวปรากฏขึ้นอาจส่งผลต่อผลลัพธ์ ตัวอย่างเช่น ทั้ง
-h และ -l ตัวเลือกส่งผลต่อการพิมพ์ชื่อไฟล์ แล้วแต่อย่างใดมาภายหลังในคำสั่ง
เส้นจะเป็นเส้นที่มีผล ในทำนองเดียวกัน เว้นแต่จะระบุไว้ด้านล่าง หากตัวเลือก
ให้สองครั้ง จะใช้การตั้งค่าในภายหลัง ค่าตัวเลขสำหรับตัวเลือกอาจตามด้วย
K หรือ M หมายถึงการคูณด้วย 1024 หรือ 1024*1024 ตามลำดับ
-- การดำเนินการนี้จะยุติรายการตัวเลือก จะเป็นประโยชน์หากรายการถัดไปใน
บรรทัดคำสั่งเริ่มต้นด้วยยัติภังค์ แต่ไม่ใช่ตัวเลือก ซึ่งช่วยให้
การประมวลผลรูปแบบและชื่อไฟล์ที่ขึ้นต้นด้วยยัติภังค์
-A จำนวน, --หลังบริบท=จำนวน
เอาท์พุต จำนวน บรรทัดบริบทหลังแต่ละบรรทัดที่ตรงกัน ถ้าชื่อไฟล์และ/หรือ
กำลังส่งออกหมายเลขบรรทัด ตัวคั่นยัติภังค์จะใช้แทนเครื่องหมายทวิภาคสำหรับ
บรรทัดบริบท บรรทัดที่มี "--" เป็นเอาต์พุตระหว่างแต่ละกลุ่มของบรรทัด
เว้นแต่จะต่อเนื่องกันในไฟล์อินพุต คุณค่าของ จำนวน is
คาดว่าจะค่อนข้างเล็ก อย่างไรก็ตาม, พีซีเร2เกรป รับประกันได้ถึง 8K
ของข้อความต่อไปนี้สำหรับเอาต์พุตบริบท
-a, --ข้อความ
ปฏิบัติต่อไฟล์ไบนารีเป็นข้อความ ซึ่งเทียบเท่ากับ --ไบนารีไฟล์=ข้อความ.
-B จำนวน, --ก่อนบริบท=จำนวน
เอาท์พุต จำนวน บรรทัดบริบทก่อนแต่ละบรรทัดที่ตรงกัน ถ้าชื่อไฟล์และ/หรือ
กำลังส่งออกหมายเลขบรรทัด ตัวคั่นยัติภังค์จะใช้แทนเครื่องหมายทวิภาคสำหรับ
บรรทัดบริบท บรรทัดที่มี "--" เป็นเอาต์พุตระหว่างแต่ละกลุ่มของบรรทัด
เว้นแต่จะต่อเนื่องกันในไฟล์อินพุต คุณค่าของ จำนวน is
คาดว่าจะค่อนข้างเล็ก อย่างไรก็ตาม, พีซีเร2เกรป รับประกันได้ถึง 8K
ของข้อความก่อนหน้าสำหรับผลลัพธ์บริบท
--ไบนารีไฟล์=word
ระบุวิธีการประมวลผลไฟล์ไบนารี ถ้าคำว่า "ไบนารี" (the
ค่าเริ่มต้น) การจับคู่รูปแบบจะดำเนินการกับไฟล์ไบนารี แต่เอาต์พุตเดียวคือ
"ไฟล์ไบนารี ตรงกัน" เมื่อจับคู่สำเร็จ หากคำว่า "ข้อความ" ซึ่ง
เทียบเท่ากับ -a or --ข้อความ ตัวเลือกไฟล์ไบนารีจะถูกประมวลผลในที่เดียวกัน
เหมือนกับไฟล์อื่นๆ ในกรณีนี้ เมื่อจับคู่สำเร็จ ผลลัพธ์อาจเป็น
ขยะไบนารี ซึ่งสามารถมีผลกระทบที่น่ารังเกียจหากส่งไปยังเทอร์มินัล ถ้าคำว่า
คือ "ไม่มีการจับคู่" ซึ่งเทียบเท่ากับ -I ตัวเลือกไฟล์ไบนารีไม่ได้
แปรรูปเลย ถือว่าไม่น่าสนใจและข้ามไปโดยไม่มี
ทำให้เกิดผลลัพธ์ใด ๆ หรือส่งผลกระทบต่อโค้ดส่งคืน
--บัฟเฟอร์-ขนาด=จำนวน
ตั้งค่าพารามิเตอร์ที่ควบคุมจำนวนหน่วยความจำที่ใช้สำหรับบัฟเฟอร์ไฟล์ที่
กำลังถูกสแกน
-C จำนวน, --บริบท=จำนวน
เอาท์พุต จำนวน บรรทัดบริบททั้งก่อนและหลังแต่ละบรรทัดที่ตรงกัน นี้
เทียบเท่ากับการตั้งค่าทั้ง -A และ -B ให้มีค่าเท่ากัน
-c, --นับ
ห้ามส่งออกบรรทัดจากไฟล์ที่กำลังสแกน แทนการส่งออก
จำนวนแมตช์ (หรือไม่แมตช์ if -v ใช้) ที่มิฉะนั้นจะมี
ทำให้มีการแสดงเส้น โดยค่าเริ่มต้น การนับนี้จะเหมือนกับจำนวน
เส้นที่ถูกระงับ แต่ถ้า -M (มัลติไลน์) ใช้ตัวเลือก (ไม่มี -v), ที่นั่น
อาจมีการระงับบรรทัดมากกว่าจำนวนการแข่งขัน
หากไม่ได้เลือกบรรทัดใดไว้ ระบบจะส่งออกหมายเลขศูนย์ หากมีหลายไฟล์เป็น
เมื่อสแกนแล้วจะมีการส่งออกการนับสำหรับแต่ละรายการ อย่างไรก็ตาม หาก --ไฟล์-กับ-
ที่ตรงกัน นอกจากนี้ยังใช้ตัวเลือกเฉพาะไฟล์ที่มีจำนวนมากกว่าศูนย์
มีการระบุไว้ เมื่อไหร่ -c ถูกใช้, -A, -Bและ -C ตัวเลือกจะถูกละเว้น
--สี, --สี
หากให้ตัวเลือกนี้โดยไม่มีข้อมูล จะเทียบเท่ากับ "--colour=auto"
หากต้องการข้อมูล ต้องระบุในเชลล์รายการเดียวกัน คั่นด้วย an
เท่ากับเครื่องหมาย
--สี=ความคุ้มค่า, --สี=ความคุ้มค่า
ตัวเลือกนี้ระบุว่าส่วนใดของบรรทัดที่ตรงกันภายใต้สถานการณ์ใด
รูปแบบควรเป็นสีในผลลัพธ์ โดยค่าเริ่มต้น ผลลัพธ์จะไม่
มีสี ค่า (ซึ่งเป็นทางเลือก ดูด้านบน) อาจเป็น "ไม่เคย" "เสมอ" หรือ
"อัตโนมัติ" ในกรณีหลัง การระบายสีจะเกิดขึ้นก็ต่อเมื่อเอาต์พุตมาตรฐานคือ
เชื่อมต่อกับเทอร์มินัล มีการใช้ทรัพยากรมากขึ้นเมื่อเปิดใช้งานการระบายสี
เพราะ พีซีเร2เกรป ต้องค้นหาการแข่งขันที่เป็นไปได้ทั้งหมดในบรรทัดไม่ใช่แค่
หนึ่งเพื่อระบายสีทั้งหมด
สีที่ใช้กำหนดได้โดยการตั้งค่าตัวแปรสภาพแวดล้อม
PCRE2GREP_COLOUR หรือ PCRE2GREP_COLOR ค่าของตัวแปรนี้ควรเป็น a
สตริงของตัวเลขสองตัว คั่นด้วยเครื่องหมายอัฒภาค พวกเขาจะถูกคัดลอกโดยตรงไปยัง
สตริงควบคุมสำหรับตั้งค่าสีบนเทอร์มินัล ดังนั้นมันจึงเป็นของคุณ
ความรับผิดชอบเพื่อให้แน่ใจว่าสมเหตุสมผล หากไม่มีสิ่งแวดล้อม
ตัวแปรถูกตั้งค่าไว้ ค่าเริ่มต้นคือ "1;31" ซึ่งจะให้สีแดง
-D การกระทำ, --อุปกรณ์=การกระทำ
หากเส้นทางอินพุตไม่ใช่ไฟล์หรือไดเร็กทอรีปกติ "action" จะระบุว่าเป็นเช่นไร
จะถูกประมวลผล ค่าที่ถูกต้องคือ "read" (ค่าเริ่มต้น) หรือ "skip" (เงียบ
ข้ามเส้นทาง)
-d การกระทำ, --ไดเรกทอรี=การกระทำ
หากเส้นทางอินพุตเป็นไดเร็กทอรี "action" จะระบุว่าจะประมวลผลอย่างไร
ค่าที่ถูกต้องคือ "อ่าน" (ค่าเริ่มต้นในสภาพแวดล้อมที่ไม่ใช่ Windows สำหรับ
เข้ากันได้กับ GNU grep), "recurse" (เทียบเท่ากับ -r ตัวเลือก) หรือ "ข้าม"
(ข้ามเส้นทางอย่างเงียบ ๆ ซึ่งเป็นค่าเริ่มต้นในสภาพแวดล้อม Windows) ในการ "อ่าน"
กรณีไดเร็กทอรีจะถูกอ่านราวกับว่าเป็นไฟล์ธรรมดา ในการดำเนินงานบางส่วน
ระบบ ผลกระทบของการอ่านไดเร็กทอรีเช่นนี้เป็นจุดสิ้นสุดของไฟล์ทันที
อย่างอื่นอาจทำให้เกิดข้อผิดพลาดได้
-e Belt hold , --regex=Belt hold , --regexp=Belt hold
ระบุรูปแบบที่จะจับคู่ ตัวเลือกนี้สามารถใช้ได้หลายครั้งตามลำดับ
เพื่อระบุรูปแบบต่างๆ นอกจากนี้ยังสามารถใช้เป็นวิธีการระบุตัวเดียว
รูปแบบที่ขึ้นต้นด้วยยัติภังค์ เมื่อไหร่ -e ถูกใช้ไม่มีรูปแบบอาร์กิวเมนต์
จากบรรทัดคำสั่ง; อาร์กิวเมนต์ทั้งหมดถือเป็นชื่อไฟล์ ไม่มี
จำกัดจำนวนรูปแบบ ใช้กับแต่ละบรรทัดในลำดับใน
ซึ่งกำหนดไว้จนกว่าจะตรงกัน
If -f ใช้กับ -e, รูปแบบบรรทัดคำสั่งจะถูกจับคู่ก่อน ตามด้วย
รูปแบบจากไฟล์ โดยไม่ขึ้นกับลำดับที่ตัวเลือกเหล่านี้
ระบุไว้ โปรดทราบว่าการใช้ . หลายครั้ง -e ไม่เหมือนลายเดียว
กับทางเลือกอื่น ตัวอย่างเช่น X|Y ค้นหาอักขระตัวแรกในบรรทัดที่
X หรือ Y ในขณะที่หากให้สองรูปแบบแยกกัน โดยให้ X ก่อน
พีซีเร2เกรป ค้นหา X หากมี แม้ว่าจะตามหลัง Y ในบรรทัดก็ตาม มันพบว่าY
เฉพาะในกรณีที่ไม่มี X ในบรรทัด สิ่งนี้สำคัญก็ต่อเมื่อคุณกำลังใช้ -o or
--สี เพื่อแสดงส่วนของเส้นที่ตรงกัน
--ไม่รวม=Belt hold
ไฟล์ (แต่ไม่ใช่ไดเร็กทอรี) ที่มีชื่อตรงกับรูปแบบจะถูกข้ามโดยไม่มี
กำลังดำเนินการ สิ่งนี้ใช้กับไฟล์ทั้งหมดไม่ว่าจะอยู่ในบรรทัดคำสั่ง
ได้รับจาก --รายการไฟล์หรือโดยการสแกนไดเร็กทอรี รูปแบบคือ PCRE2
นิพจน์ทั่วไป และจับคู่กับองค์ประกอบสุดท้ายของชื่อไฟล์
ไม่ใช่เส้นทางทั้งหมด NS -F, -wและ -x ตัวเลือกใช้ไม่ได้กับรูปแบบนี้
ตัวเลือกอาจได้รับหลายครั้งเพื่อระบุหลาย ๆ
รูปแบบ หากชื่อไฟล์ตรงกับทั้ง an --รวม และ --ไม่รวม แบบมัน
ได้รับการยกเว้น ไม่มีรูปแบบย่อสำหรับตัวเลือกนี้
--ไม่รวมจาก=ชื่อไฟล์
ปฏิบัติต่อแต่ละบรรทัดที่ไม่ว่างของไฟล์เป็นข้อมูลสำหรับ an --ไม่รวม ตัวเลือก. อะไร
ถือเป็นการขึ้นบรรทัดใหม่เมื่ออ่านไฟล์เป็นค่าเริ่มต้นของระบบปฏิบัติการ
การขอ --บรรทัดใหม่ ตัวเลือกไม่มีผลกับตัวเลือกนี้ ตัวเลือกนี้อาจได้รับเพิ่มเติม
มากกว่าหนึ่งครั้งเพื่อระบุจำนวนไฟล์ที่จะอ่าน
--exclude-ผบ=Belt hold
ไดเร็กทอรีที่มีชื่อตรงกับรูปแบบจะถูกข้ามโดยไม่ประมวลผล
ไม่ว่าการตั้งค่าของ - บันทึกซ้ำ ตัวเลือก. สิ่งนี้ใช้กับไดเร็กทอรีทั้งหมด
ไม่ว่าจะระบุไว้ในบรรทัดคำสั่งที่ได้รับจาก --รายการไฟล์, หรือโดยการสแกน a
ไดเรกทอรีหลัก รูปแบบเป็นนิพจน์ทั่วไป PCRE2 และตรงกัน
เทียบกับองค์ประกอบสุดท้ายของชื่อไดเร็กทอรี ไม่ใช่เส้นทางทั้งหมด NS -F,
-wและ -x ตัวเลือกใช้ไม่ได้กับรูปแบบนี้ อาจให้ตัวเลือกใดก็ได้
จำนวนครั้งเพื่อระบุมากกว่าหนึ่งรูปแบบ ถ้าไดเร็กทอรี
ตรงกันทั้งคู่ --include-ผบ และ --exclude-ผบได้รับการยกเว้น ไม่มีสั้น
แบบฟอร์มสำหรับตัวเลือกนี้
-F, --fixed-สตริง
ตีความรูปแบบการจับคู่ข้อมูลแต่ละรูปแบบเป็นรายการสตริงคงที่ คั่นด้วย
ขึ้นบรรทัดใหม่ แทนที่จะเป็นนิพจน์ทั่วไป สิ่งที่ถือเป็นบรรทัดใหม่สำหรับ
วัตถุประสงค์นี้ถูกควบคุมโดย --บรรทัดใหม่ ตัวเลือก -w (จับคู่เป็นคำ) และ
-x (จับคู่ทั้งบรรทัด) ตัวเลือกที่ใช้ได้กับ -F. ใช้กับแต่ละ
สตริงคงที่ มีการเลือกบรรทัดหากพบสตริงคงที่ใด ๆ ในนั้น
(ขึ้นอยู่กับ -w or -xหากมี) ตัวเลือกนี้ใช้เฉพาะกับรูปแบบที่
ตรงกับเนื้อหาของไฟล์ ใช้ไม่ได้กับลวดลาย
ที่ระบุโดย .ใด ๆ --รวม or --ไม่รวม ตัวเลือก
-f ชื่อไฟล์, --ไฟล์=ชื่อไฟล์
อ่านรูปแบบจากไฟล์หนึ่งรายการต่อบรรทัด และจับคู่กับแต่ละบรรทัดของ
ป้อนข้อมูล. สิ่งที่ถือเป็นการขึ้นบรรทัดใหม่เมื่ออ่านไฟล์คือปฏิบัติการ
ค่าเริ่มต้นของระบบ NS --บรรทัดใหม่ ตัวเลือกไม่มีผลกับตัวเลือกนี้ ต่อท้าย
ช่องว่างสีขาวจะถูกลบออกจากแต่ละบรรทัด และบรรทัดว่างจะถูกละเว้น ว่างเปล่า
ไฟล์ไม่มีรูปแบบดังนั้นจึงไม่ตรงกับสิ่งใด ดูความคิดเห็น
เกี่ยวกับรูปแบบที่หลากหลายกับรูปแบบเดียวที่มีทางเลือกใน
คำอธิบายของ -e ครีมมาสคาโปนชีส ด้านบน
หากระบุตัวเลือกนี้มากกว่าหนึ่งครั้ง ไฟล์ที่ระบุทั้งหมดจะถูกอ่าน ข้อมูล
บรรทัดจะถูกส่งออกหากมีรูปแบบใดที่ตรงกัน ชื่อไฟล์สามารถกำหนดเป็น "-"
เพื่ออ้างถึงอินพุตมาตรฐาน เมื่อไหร่ -f ใช้รูปแบบที่ระบุบน
บรรทัดคำสั่งโดยใช้ -e อาจมีอยู่ด้วย พวกเขาได้รับการทดสอบก่อนไฟล์ของ
รูปแบบ อย่างไรก็ตาม ไม่มีรูปแบบอื่นที่นำมาจากบรรทัดคำสั่ง ทั้งหมด
อาร์กิวเมนต์ถือเป็นชื่อของเส้นทางที่จะค้นหา
--รายการไฟล์=ชื่อไฟล์
อ่านรายการไฟล์และ/หรือไดเร็กทอรีที่จะสแกนจากไฟล์ที่ให้มา
หนึ่งไฟล์ต่อบรรทัด ช่องว่างต่อท้ายจะถูกลบออกจากแต่ละบรรทัด และว่างเปล่า
เส้นจะถูกละเว้น เส้นทางเหล่านี้ได้รับการประมวลผลก่อนรายการใด ๆ ที่ระบุไว้ใน
บรรทัดคำสั่ง. ชื่อไฟล์สามารถกำหนดให้เป็น "-" เพื่ออ้างถึงอินพุตมาตรฐาน
If --ไฟล์ และ --รายการไฟล์ ระบุทั้งคู่เป็น "-" รูปแบบจะถูกอ่านก่อน
สิ่งนี้มีประโยชน์ก็ต่อเมื่ออินพุตมาตรฐานเป็นเทอร์มินัล จากนั้น
บรรทัด (รายการไฟล์) สามารถอ่านได้หลังการบ่งชี้สิ้นสุดไฟล์ ถ้านี้
ให้ตัวเลือกมากกว่าหนึ่งครั้ง ไฟล์ที่ระบุทั้งหมดจะถูกอ่าน
--ไฟล์ออฟเซ็ต
แทนที่จะแสดงเส้นหรือบางส่วนของเส้นที่ตรงกัน ให้แสดงแต่ละรายการที่ตรงกันเป็น an
ออฟเซ็ตตั้งแต่เริ่มต้นไฟล์และความยาว โดยคั่นด้วยเครื่องหมายจุลภาค ในเรื่องนี้
โหมดไม่แสดงบริบท นั่นคือ -A, -Bและ -C ตัวเลือกจะถูกละเว้น ถ้า
มีการแข่งขันมากกว่าหนึ่งรายการในหนึ่งบรรทัด โดยแต่ละรายการจะแสดงแยกกัน นี้
ตัวเลือกเป็นเอกสิทธิ์เฉพาะกับ --เส้นออฟเซ็ต และ --การจับคู่เท่านั้น.
-H, --with-ชื่อไฟล์
บังคับให้รวมชื่อไฟล์ที่จุดเริ่มต้นของบรรทัดเอาต์พุตเมื่อค้นหา
ไฟล์เดียว โดยค่าเริ่มต้น ชื่อไฟล์จะไม่แสดงในกรณีนี้ สำหรับ
บรรทัดที่ตรงกัน ชื่อไฟล์ตามด้วยโคลอน สำหรับบรรทัดบริบท a
ใช้ตัวคั่นยัติภังค์ หากหมายเลขบรรทัดกำลังถูกส่งออกด้วย มันจะตามหลัง
ชื่อไฟล์. เมื่อ -M option ทำให้รูปแบบตรงกับมากกว่าหนึ่งบรรทัดเท่านั้น
อันแรกนำหน้าด้วยชื่อไฟล์
-h, --no-ชื่อไฟล์
ระงับชื่อไฟล์เอาต์พุตเมื่อค้นหาหลายไฟล์ โดยค่าเริ่มต้น file
ชื่อจะปรากฏขึ้นเมื่อมีการค้นหาหลายไฟล์ สำหรับบรรทัดที่ตรงกัน file
ชื่อตามด้วยเครื่องหมายทวิภาค; สำหรับบรรทัดบริบท จะใช้ตัวคั่นยัติภังค์ ถ้า
มีการส่งออกหมายเลขบรรทัดตามชื่อไฟล์
--ช่วยด้วย ส่งข้อความช่วยเหลือโดยให้รายละเอียดโดยย่อของตัวเลือกคำสั่งและประเภทไฟล์
สนับสนุนแล้วออก สิ่งอื่นใดในบรรทัดคำสั่งจะถูกละเว้น
-I ละเว้นไฟล์ไบนารี ซึ่งเทียบเท่ากับ --ไบนารีไฟล์=ไม่ตรงกัน.
-i, --ละเว้นกรณี
ละเว้นความแตกต่างตัวพิมพ์ใหญ่/ตัวพิมพ์เล็กระหว่างการเปรียบเทียบ
--รวม=Belt hold
ถ้ามี --รวม มีการระบุรูปแบบไฟล์เดียวที่ประมวลผลคือ
ที่ตรงกับรูปแบบใดรูปแบบหนึ่ง (และไม่ตรงกับan --ไม่รวม รูปแบบ).
ตัวเลือกนี้ไม่มีผลกับไดเร็กทอรี แต่จะมีผลกับไฟล์ทั้งหมด ไม่ว่า
ระบุไว้ในบรรทัดคำสั่ง ได้มาจาก --รายการไฟล์, หรือโดยการสแกน a
ไดเร็กทอรี. รูปแบบนี้เป็นนิพจน์ทั่วไป PCRE2 และจับคู่กับ
องค์ประกอบสุดท้ายของชื่อไฟล์ ไม่ใช่เส้นทางทั้งหมด NS -F, -wและ -x
ตัวเลือกใช้ไม่ได้กับรูปแบบนี้ ตัวเลือกอาจได้รับจำนวน
ครั้ง หากชื่อไฟล์ตรงกับทั้ง an --รวม และ --ไม่รวม รูปแบบมันคือ
ยกเว้น ไม่มีรูปแบบย่อสำหรับตัวเลือกนี้
--include-จาก=ชื่อไฟล์
ปฏิบัติต่อแต่ละบรรทัดที่ไม่ว่างของไฟล์เป็นข้อมูลสำหรับ an --รวม ตัวเลือก. อะไร
ถือเป็นการขึ้นบรรทัดใหม่เพื่อจุดประสงค์นี้เป็นค่าเริ่มต้นของระบบปฏิบัติการ NS
--บรรทัดใหม่ ตัวเลือกไม่มีผลกับตัวเลือกนี้ ตัวเลือกนี้อาจได้รับใด ๆ
จำนวนครั้ง; ไฟล์ทั้งหมดจะถูกอ่าน
--include-ผบ=Belt hold
ถ้ามี --include-ผบ มีการระบุรูปแบบเฉพาะไดเร็กทอรีที่เป็น
ประมวลผลคือรูปแบบที่ตรงกับรูปแบบใดรูปแบบหนึ่ง (และไม่ตรงกับ an
--exclude-ผบ ลวดลาย). สิ่งนี้ใช้กับไดเร็กทอรีทั้งหมด ไม่ว่าจะอยู่ในรายการ
บรรทัดคำสั่งที่ได้รับจาก --รายการไฟล์หรือโดยการสแกนไดเร็กทอรีหลัก NS
รูปแบบคือนิพจน์ทั่วไป PCRE2 และจับคู่กับสุดท้าย
ส่วนประกอบของชื่อไดเร็กทอรี ไม่ใช่พาธทั้งหมด ดิ -F, -wและ -x ตัวเลือก
ห้ามใช้กับรูปแบบนี้ ตัวเลือกอาจได้รับหลายครั้ง ถ้า
ไดเรกทอรีตรงกับทั้ง --include-ผบ และ --exclude-ผบได้รับการยกเว้น มี
ไม่มีรูปแบบย่อสำหรับตัวเลือกนี้
-L, --files-ไม่มีการจับคู่
แทนที่จะส่งออกบรรทัดจากไฟล์ เพียงแค่ส่งออกชื่อของไฟล์
ที่ไม่มีบรรทัดใด ๆ ที่จะได้รับการส่งออก แต่ละชื่อไฟล์คือ
ส่งออกครั้งเดียวในบรรทัดที่แยกจากกัน
-l, --files-กับ-ตรงกัน
แทนที่จะส่งออกบรรทัดจากไฟล์ เพียงแค่ส่งออกชื่อของไฟล์
มีบรรทัดที่จะส่งออก แต่ละชื่อไฟล์จะถูกส่งออกครั้งเดียว on
แยกบรรทัด การค้นหาปกติจะหยุดทันทีที่พบบรรทัดที่ตรงกันใน
ไฟล์. อย่างไรก็ตาม หาก -c (นับ) ยังใช้ตัวเลือก การจับคู่จะดำเนินต่อไปใน
เพื่อให้ได้จำนวนที่ถูกต้องและไฟล์ที่มีอย่างน้อยหนึ่งรายการที่ตรงกัน
มีการระบุไว้พร้อมกับการนับของพวกเขา การใช้ตัวเลือกนี้กับ -c เป็นวิธีการ
ระงับรายการไฟล์ที่ไม่มีรายการที่ตรงกัน
--ฉลาก=พร้อมชื่อ
ตัวเลือกนี้ระบุชื่อที่จะใช้สำหรับอินพุตมาตรฐานเมื่อชื่อไฟล์
กำลังถูกส่งออก หากไม่ได้ให้มา จะใช้ "(อินพุตมาตรฐาน)" ไม่มีสั้น
แบบฟอร์มสำหรับตัวเลือกนี้
--line-บัฟเฟอร์
เมื่อให้ตัวเลือกนี้ อินพุตจะถูกอ่านและประมวลผลทีละบรรทัด และ
เอาต์พุตจะถูกล้างหลังจากเขียนแต่ละครั้ง โดยค่าเริ่มต้น อินพุตจะถูกอ่านเป็นกลุ่มใหญ่
เว้นแต่ พีซีเร2เกรป สามารถระบุได้ว่ากำลังอ่านจากเทอร์มินัล (ซึ่งก็คือ
ปัจจุบันเป็นไปได้เฉพาะในสภาพแวดล้อมที่เหมือน Unix) เอาต์พุตไปยังเทอร์มินัล is
โดยปกติระบบปฏิบัติการจะถูกล้างโดยอัตโนมัติ ตัวเลือกนี้สามารถ
มีประโยชน์เมื่อต่ออินพุตหรือเอาต์พุตเข้ากับไพพ์และคุณไม่ต้องการ
พีซีเร2เกรป เพื่อบัฟเฟอร์ข้อมูลจำนวนมาก อย่างไรก็ตามการใช้งานจะส่งผลต่อ
ประสิทธิภาพและ -M (มัลติไลน์) ตัวเลือกหยุดทำงาน
--เส้นออฟเซ็ต
แทนที่จะแสดงเส้นหรือบางส่วนของเส้นที่ตรงกัน ให้แสดงแต่ละรายการที่ตรงกันเป็นเส้น
จำนวน ออฟเซ็ตจากจุดเริ่มต้นของบรรทัด และความยาว หมายเลขบรรทัดคือ
สิ้นสุดด้วยเครื่องหมายทวิภาค (เช่นเคย ดู the -n ตัวเลือก) และออฟเซ็ตและความยาว
คั่นด้วยเครื่องหมายจุลภาค ในโหมดนี้ จะไม่มีการแสดงบริบท นั่นคือ -A,
-Bและ -C ตัวเลือกจะถูกละเว้น หากมีการจับคู่มากกว่าหนึ่งรายการในแต่ละบรรทัด
ของพวกเขาจะแสดงแยกต่างหาก ตัวเลือกนี้ไม่เกิดร่วมกันกับ --ไฟล์-
ชดเชย และ --การจับคู่เท่านั้น.
--ภาษา=ชื่อสถานที่
ตัวเลือกนี้ระบุสถานที่ที่จะใช้สำหรับการจับคู่รูปแบบ มันแทนที่
ค่าใน LC_ALL or LC_CTYPE ตัวแปรสภาพแวดล้อม หากไม่มีสถานที่คือ
ระบุ ค่าเริ่มต้นของไลบรารี PCRE2 (โดยปกติคือโลแคล "C") จะถูกใช้ ที่นั่น
ไม่ใช่รูปแบบย่อสำหรับตัวเลือกนี้
--match-จำกัด=จำนวน
การประมวลผลรูปแบบนิพจน์ทั่วไปบางรูปแบบอาจต้องใช้ . เป็นจำนวนมาก
หน่วยความจำซึ่งนำไปสู่ความล้มเหลวของโปรแกรมในบางกรณีหากไม่เพียงพอ
รูปแบบอื่นๆ อาจใช้เวลานานมากในการค้นหาการจับคู่ที่เป็นไปได้ทั้งหมด
สตริง NS pcre2_match() ฟังก์ชันที่เรียกโดย พีซีเร2เกรป ที่จะทำ
การจับคู่มีสองพารามิเตอร์ที่สามารถจำกัดทรัพยากรที่ใช้
การขอ --match-จำกัด ตัวเลือกให้วิธีการจำกัดการใช้ทรัพยากรเมื่อ
รูปแบบการประมวลผลที่ไม่ตรงกันแต่มีขนาดใหญ่มาก
จำนวนความเป็นไปได้ในแผนผังการค้นหา ตัวอย่างคลาสสิกคือรูปแบบ
ที่ใช้การทำซ้ำแบบไม่จำกัดที่ซ้อนกัน ภายใน PCRE2 ใช้ฟังก์ชันที่เรียกว่า
จับคู่() ซึ่งเรียกซ้ำๆ (บางครั้งเรียกซ้ำ) ขีดจำกัดที่กำหนดโดย
--match-จำกัด ถูกกำหนดตามจำนวนครั้งที่เรียกใช้ฟังก์ชันนี้ระหว่าง a
แมตช์ซึ่งมีผลในการจำกัดปริมาณการย้อนรอยที่สามารถรับได้
แทน
การขอ --recursion-จำกัด ตัวเลือกคล้ายกับ --match-จำกัดแต่แทนที่จะเป็น
จำกัดจำนวนครั้งที่ จับคู่() เรียกว่าจำกัดความลึก
ของการโทรแบบเรียกซ้ำ ซึ่งจะจำกัดจำนวนหน่วยความจำที่สามารถใช้ได้
ความลึกของการเรียกซ้ำเป็นจำนวนที่น้อยกว่าจำนวนการโทรทั้งหมด เนื่องจาก
ไม่ใช่ทุกสายถึง จับคู่() เป็นแบบเรียกซ้ำ ขีดจำกัดนี้จะใช้ได้ก็ต่อเมื่อตั้งค่าไว้
มีขนาดเล็กกว่า --match-จำกัด.
ไม่มีรูปแบบย่อสำหรับตัวเลือกเหล่านี้ มีการระบุการตั้งค่าเริ่มต้น
เมื่อรวบรวมไลบรารี PCRE2 โดยค่าเริ่มต้นคือ 10 ล้าน
-M, --หลายบรรทัด
อนุญาตให้รูปแบบจับคู่มากกว่าหนึ่งบรรทัด เมื่อให้ตัวเลือกนี้ รูปแบบ
อาจมีอักขระขึ้นบรรทัดใหม่ตามตัวอักษรและการเกิดขึ้นภายในของ ^
และอักขระ $ ผลลัพธ์สำหรับการจับคู่ที่ประสบความสำเร็จอาจประกอบด้วยมากกว่าหนึ่ง
ไลน์. เส้นแรกคือเส้นที่เริ่มการแข่งขัน และเส้นสุดท้ายคือเส้น
ซึ่งการแข่งขันจบลง หากสตริงที่ตรงกันลงท้ายด้วยลำดับขึ้นบรรทัดใหม่
เอาต์พุตจะสิ้นสุดที่ส่วนท้ายของบรรทัดนั้น
เมื่อตั้งค่าตัวเลือกนี้ ไลบรารี PCRE2 จะถูกเรียกในโหมด "มัลติไลน์"
อย่างไรก็ตาม พีซีเร2เกรป ยังคงประมวลผลอินพุตทีละบรรทัด ความแตกต่างคือ
ว่าสตริงที่ตรงกันอาจขยายผ่านจุดสิ้นสุดของบรรทัดและดำเนินการต่อในหนึ่งหรือ
บรรทัดต่อมาเพิ่มเติม ลำดับการขึ้นบรรทัดใหม่ต้องถูกจับคู่เป็นส่วนหนึ่งของ
ลวดลาย. เช่น ค้นหาวลี "regular expression" ในไฟล์โดยที่
"ปกติ" อาจอยู่ท้ายบรรทัดและ "นิพจน์" ที่จุดเริ่มต้นของ
บรรทัดถัดไป คุณสามารถใช้คำสั่งนี้:
pcre2grep -M 'ปกติ\s+นิพจน์'
ลำดับหลีก \s ตรงกับอักขระ white space ใดๆ รวมถึงการขึ้นบรรทัดใหม่
และตามด้วย + เพื่อให้ตรงกับช่องว่างสีขาวต่อท้ายในบรรทัดแรกเป็น
และอาจจัดการลำดับขึ้นบรรทัดใหม่สองอักขระ
มีการจำกัดจำนวนสายที่สามารถจับคู่กำหนดโดยวิธี
ที่ พีซีเร2เกรป บัฟเฟอร์ไฟล์อินพุตขณะสแกน อย่างไรก็ตาม, พีซีเร2เกรป เพื่อให้แน่ใจ
อย่างน้อย 8K อักขระหรือส่วนที่เหลือของไฟล์ (แล้วแต่จำนวนใดจะสั้นกว่า)
มีให้สำหรับการจับคู่ไปข้างหน้าและในทำนองเดียวกันอักขระ 8K ก่อนหน้า (หรือ
อักขระก่อนหน้าทั้งหมดหากน้อยกว่า 8K) จะได้รับการรับประกันว่าจะใช้ได้
สำหรับการดูด้านหลังการยืนยัน ดิ -M ตัวเลือกไม่ทำงานเมื่ออินพุตถูกอ่านบรรทัด
ตามบรรทัด (ดู --line-บัฟเฟอร์.)
-N ขึ้นบรรทัดใหม่ประเภท, --บรรทัดใหม่=ขึ้นบรรทัดใหม่ประเภท
ไลบรารี PCRE2 รองรับอนุสัญญาห้าแบบที่แตกต่างกันเพื่อระบุจุดสิ้นสุดของ
เส้น เป็นลำดับอักขระเดียว CR (การขึ้นบรรทัดใหม่) และ LF
(linefeed), CRLF ลำดับสองอักขระ, แบบแผน "anycrlf" ซึ่ง
ตระหนักถึงสามประเภทใด ๆ ก่อนหน้านี้และอนุสัญญา "ใด ๆ " ซึ่ง
ลำดับการสิ้นสุดบรรทัด Unicode จะถือว่าสิ้นสุดบรรทัด ลำดับ Unicode
คือสามตัวที่กล่าวถึง บวก VT (แท็บแนวตั้ง, U+000B), FF (การป้อนแบบฟอร์ม
U+000C), NEL (บรรทัดถัดไป, U+0085), LS (ตัวคั่นบรรทัด, U+2028) และ PS (ย่อหน้า
ตัวคั่น U+2029)
เมื่อมีการสร้างไลบรารี PCRE2 จะมีการระบุลำดับการสิ้นสุดบรรทัดเริ่มต้น
โดยปกติแล้วจะเป็นลำดับมาตรฐานสำหรับระบบปฏิบัติการ เว้นแต่
ระบุเป็นอย่างอื่นโดยตัวเลือกนี้ พีซีเร2เกรป ใช้ค่าเริ่มต้นของห้องสมุด NS
ค่าที่เป็นไปได้สำหรับตัวเลือกนี้คือ CR, LF, CRLF, ANYCRLF หรือ ANY นี้ทำให้
สามารถใช้ได้ พีซีเร2เกรป เพื่อสแกนไฟล์ที่มาจากสภาพแวดล้อมอื่น
โดยไม่ต้องแก้ไขส่วนท้ายของบรรทัด หากข้อมูลที่กำลังสแกนอยู่
ไม่เห็นด้วยกับข้อตกลงที่กำหนดโดยตัวเลือกนี้ พีซีเร2เกรป อาจประพฤติตนใน
วิธีแปลก ๆ โปรดทราบว่าตัวเลือกนี้ใช้ไม่ได้กับไฟล์ที่ระบุโดย -f,
--exclude-จากหรือ --รวม-จาก ตัวเลือกที่คาดว่าจะใช้
ลำดับการขึ้นบรรทัดใหม่มาตรฐานของระบบปฏิบัติการ
-n, --line-หมายเลข
นำหน้าแต่ละบรรทัดเอาต์พุตด้วยหมายเลขบรรทัดในไฟล์ ตามด้วยโคลอน for
เส้นที่ตรงกันหรือยัติภังค์สำหรับบรรทัดบริบท หากชื่อไฟล์ยังเป็น
ออกก่อนหมายเลขบรรทัด เมื่อ -M ตัวเลือกทำให้เกิดรูปแบบเพื่อ
จับคู่มากกว่าหนึ่งบรรทัด เฉพาะบรรทัดแรกเท่านั้นที่นำหน้าด้วยหมายเลขบรรทัด นี้
ตัวเลือกถูกบังคับถ้า --เส้นออฟเซ็ต ถูกนำมาใช้.
--ไม่มีจิต หากไลบรารี PCRE2 ถูกสร้างขึ้นด้วยการสนับสนุนการคอมไพล์แบบทันเวลา (ซึ่ง
เร่งการจับคู่) พีซีเร2เกรป ใช้ประโยชน์จากสิ่งนี้โดยอัตโนมัติ เว้นแต่จะเป็น
ปิดใช้งานอย่างชัดเจนในเวลาที่สร้าง สามารถใช้ตัวเลือกนี้เพื่อปิดใช้งานการใช้
JIT ณ รันไทม์ มีไว้สำหรับการทดสอบและปัญหารอบการทำงาน มัน
ไม่ควรมีความจำเป็นในการใช้งานตามปกติ
-o, --การจับคู่เท่านั้น
แสดงเฉพาะส่วนของเส้นที่ตรงกับรูปแบบแทนที่จะเป็นทั้งเส้น
ในโหมดนี้ จะไม่มีการแสดงบริบท นั่นคือ -A, -Bและ -C ตัวเลือกคือ
ละเลย หากมีการแข่งขันมากกว่าหนึ่งรายการในหนึ่งบรรทัด แต่ละรายการจะแสดงขึ้น
แยกจากกัน ถ้า -o รวมกับ -v (กลับความรู้สึกของการจับคู่เพื่อค้นหา
บรรทัดที่ไม่ตรงกัน) ไม่มีการสร้างเอาต์พุต แต่มีการตั้งค่าโค้ดส่งคืน
อย่างเหมาะสม. หากส่วนที่ตรงกันของบรรทัดว่างเปล่า จะไม่มีเอาต์พุตใดๆ ออกมา
เว้นแต่จะพิมพ์ชื่อไฟล์หรือหมายเลขบรรทัด ซึ่งในกรณีนี้คือ
แสดงในบรรทัดว่างเป็นอย่างอื่น ตัวเลือกนี้ไม่เกิดร่วมกันกับ --ไฟล์-
ชดเชย และ --เส้นออฟเซ็ต.
-oจำนวน, --การจับคู่เท่านั้น=จำนวน
แสดงเฉพาะส่วนของเส้นที่ตรงกับวงเล็บของ
จำนวนที่กำหนด รองรับวงเล็บสูงสุด 32 วงเล็บ และ -o0 is
เทียบเท่ากับ -o โดยไม่มีตัวเลข เนื่องจากตัวเลือกเหล่านี้สามารถให้ได้โดยไม่ต้องมี
อาร์กิวเมนต์ (ดูด้านบน) หากมีอาร์กิวเมนต์ จะต้องระบุในอาร์กิวเมนต์เดียวกัน
รายการเชลล์ เช่น -o3 หรือ --only-matching=2 ความคิดเห็นที่ให้ไว้สำหรับ
กรณีที่ไม่ใช่ข้อโต้แย้งข้างต้นใช้กับกรณีนี้ด้วย หากระบุการจับ
วงเล็บไม่มีอยู่ในรูปแบบ หรือไม่ได้กำหนดไว้ในการจับคู่ ไม่มีอะไรเลย
เป็นเอาต์พุตเว้นแต่ชื่อไฟล์หรือหมายเลขบรรทัดจะถูกส่งออก
หากตัวเลือกนี้ได้รับหลายครั้ง สตริงย่อยหลายรายการจะถูกส่งออกใน
สั่งตัวเลือกจะได้รับ ตัวอย่างเช่น -o3 -o1 -o3 ทำให้เกิดสตริงย่อย
จับคู่โดยจับวงเล็บ 3 และ 1 และ 3 อีกครั้งเพื่อส่งออก โดย
ค่าเริ่มต้นไม่มีตัวคั่น (แต่ดูตัวเลือกถัดไป)
--om-คั่น=ข้อความ
ระบุสตริงที่แยกสำหรับหลายรายการของ -o. ค่าเริ่มต้นคือ an
สตริงที่ว่างเปล่า การแยกสายจะไม่มีสี
-q, --เงียบ
ทำงานอย่างเงียบ ๆ นั่นคือไม่แสดงอะไรนอกจากข้อความแสดงข้อผิดพลาด สถานะทางออก
ระบุว่าพบรายการที่ตรงกันหรือไม่
-r, - บันทึกซ้ำ
หากพาธใดเป็นไดเร็กทอรี ให้สแกนไฟล์ในไดเร็กทอรีซ้ำๆ โดยใช้
บันทึกใด ๆ --รวม และ --ไม่รวม การตั้งค่า. โดยค่าเริ่มต้น ไดเร็กทอรีจะถูกอ่านเป็น
ไฟล์ปกติ ในระบบปฏิบัติการบางระบบ จะทำให้เกิดจุดสิ้นสุดไฟล์ทันที
ตัวเลือกนี้เป็นชวเลขสำหรับการตั้งค่า -d ตัวเลือกในการ "เรียกซ้ำ"
--recursion-จำกัด=จำนวน
ดู --match-จำกัด ครีมมาสคาโปนชีส ด้านบน
-s, --ไม่มีข้อความ
ระงับข้อความแสดงข้อผิดพลาดเกี่ยวกับไฟล์ที่ไม่มีอยู่หรือไม่สามารถอ่านได้ ไฟล์ดังกล่าวคือ
ข้ามไปอย่างเงียบ ๆ อย่างไรก็ตามโค้ดส่งคืนยังคงเป็น 2 แม้ว่าจะพบรายการที่ตรงกัน
ในไฟล์อื่นๆ
-u, --utf-8
ทำงานในโหมด UTF-8 ตัวเลือกนี้จะใช้ได้เฉพาะในกรณีที่ PCRE2 ได้รับการคอมไพล์แล้ว
ด้วยการสนับสนุน UTF-8 รูปแบบทั้งหมด (รวมถึงรูปแบบใด ๆ --ไม่รวม และ
--รวม ตัวเลือก) และหัวเรื่องทั้งหมดที่สแกนต้องเป็นสตริงที่ถูกต้อง
ของอักขระ UTF-8
-V, --รุ่น
เขียนหมายเลขเวอร์ชันของ พีซีเร2เกรป และห้องสมุด PCRE2 ให้ได้มาตรฐาน
เอาท์พุตแล้วออก สิ่งอื่นใดในบรรทัดคำสั่งจะถูกละเว้น
-v, --invert-ตรง
กลับความรู้สึกของการแข่งขันเพื่อให้เส้นที่ทำ ไม่ ตรงกับใด ๆ ของ
ลวดลายคือสิ่งที่พบ
-w, --word-regex, --word-regexp
บังคับรูปแบบให้จับคู่ทั้งคำเท่านั้น นี่เทียบเท่ากับการมี \b at
จุดเริ่มต้นและจุดสิ้นสุดของรูปแบบ ตัวเลือกนี้ใช้เฉพาะกับรูปแบบที่
ตรงกับเนื้อหาของไฟล์ ใช้ไม่ได้กับลวดลาย
ที่ระบุโดย .ใด ๆ --รวม or --ไม่รวม ตัวเลือก
-x, --line-regex, --บรรทัด-regexp
บังคับให้ยึดรูปแบบ (แต่ละรูปแบบต้องเริ่มจับคู่ที่จุดเริ่มต้นของ
บรรทัด) และนอกจากนี้ ต้องการให้ตรงกับทั้งบรรทัด นี่เทียบเท่า
ให้มีอักขระ ^ และ $ ที่จุดเริ่มต้นและจุดสิ้นสุดของแต่ละระดับบนสุดทางเลือก
สาขาในทุกรูปแบบ ตัวเลือกนี้ใช้เฉพาะกับรูปแบบที่
ตรงกับเนื้อหาของไฟล์ ใช้ไม่ได้กับรูปแบบที่ระบุ
โดย .ใด ๆ --รวม or --ไม่รวม ตัวเลือก
และพวกเรา ตัวแปร
ตัวแปรสภาพแวดล้อม LC_ALL และ LC_CTYPE ถูกตรวจสอบในลำดับนั้นสำหรับสถานที่
อันแรกที่ตั้งไว้ถูกใช้ สิ่งนี้สามารถแทนที่ได้โดย --ภาษา ตัวเลือก. ถ้าไม่
โลแคลถูกตั้งค่า ค่าเริ่มต้นของไลบรารี PCRE2 (ปกติคือโลแคล "C") จะถูกใช้
บรรทัดใหม่
การขอ -N (--บรรทัดใหม่) ตัวเลือกช่วยให้ พีซีเร2เกรป เพื่อสแกนไฟล์ด้วยการขึ้นบรรทัดใหม่
อนุสัญญาจากค่าเริ่มต้น ส่วนใด ๆ ของไฟล์อินพุตที่เขียนไปยัง
เอาต์พุตมาตรฐานจะถูกคัดลอกเหมือนกัน ไม่ว่าจะมีลำดับการขึ้นบรรทัดใหม่อะไรใน
ป้อนข้อมูล. อย่างไรก็ตาม การตั้งค่าของตัวเลือกนี้ไม่ส่งผลต่อการตีความไฟล์
ระบุโดย -f, --exclude-จากหรือ --รวม-จาก ตัวเลือกที่ถือว่าใช้
ลำดับการขึ้นบรรทัดใหม่มาตรฐานของระบบปฏิบัติการ และไม่มีผลกระทบต่อวิธีการที่
พีซีเร2เกรป เขียนข้อความแสดงข้อมูลไปยังข้อผิดพลาดมาตรฐานและสตรีมเอาต์พุต สำหรับ
สิ่งเหล่านี้ใช้สตริง "\n" เพื่อระบุการขึ้นบรรทัดใหม่ โดยอาศัยไลบรารี CI/O ถึง
แปลงเป็นลำดับที่เหมาะสม
OPTIONS ความเข้ากันได้
หลายรูปแบบสั้นและยาวของ พีซีเร2เกรปตัวเลือกของจะเหมือนกับใน GNU grep
โปรแกรม. ตัวเลือกยาว ๆ ของแบบฟอร์ม --xxx-regexp (คำศัพท์ GNU) ก็มีให้เช่นกันเช่น
--xxx-regex (คำศัพท์ PCRE2) อย่างไรก็ตาม --รายการไฟล์, --ไฟล์ออฟเซ็ต, --include-ผบ,
--เส้นออฟเซ็ต, --ภาษา, --match-จำกัด, -M, --หลายบรรทัด, -N, --บรรทัดใหม่, --om-คั่น,
--recursion-จำกัด, -uและ --utf-8 ตัวเลือกมีความเฉพาะเจาะจงกับ พีซีเร2เกรปเช่นเดียวกับการใช้
--การจับคู่เท่านั้น ตัวเลือกที่มีวงเล็บจับตัวเลข
แม้ว่าตัวเลือกทั่วไปส่วนใหญ่จะทำงานในลักษณะเดียวกัน แต่ก็มีบางตัวเลือกที่แตกต่างกันใน พีซีเร2เกรป.
ยกตัวอย่างเช่น --รวม อาร์กิวเมนต์ของ option เป็น glob สำหรับ GNU grepแต่เป็นประจำ
นิพจน์สำหรับ พีซีเร2เกรป. ถ้าทั้ง -c และ -l ให้ตัวเลือก รายการ grep ของ GNU เท่านั้น
ชื่อไฟล์โดยไม่นับแต่ พีซีเร2เกรป ให้การนับด้วย
OPTIONS กับ DATA
มีสี่วิธีในการระบุตัวเลือกที่มีข้อมูล ถ้าสั้น
ใช้ตัวเลือกแบบฟอร์ม ข้อมูลอาจตามมาทันทีหรือ (มีข้อยกเว้นหนึ่งข้อ) ในถัดไป
รายการบรรทัดคำสั่ง ตัวอย่างเช่น:
-f/บาง/ไฟล์
-f /some/ไฟล์
ข้อยกเว้นคือ -o ซึ่งอาจปรากฏโดยมีหรือไม่มีข้อมูลก็ได้ ด้วยเหตุนี้
หากมีข้อมูลจะต้องติดตามทันทีในรายการเดียวกัน เช่น -o3
หากใช้ตัวเลือกแบบยาว ข้อมูลอาจปรากฏในรายการบรรทัดคำสั่งเดียวกัน
คั่นด้วยอักขระเท่ากับหรือ (มีข้อยกเว้นสองประการ) อาจปรากฏในรายการถัดไป
รายการบรรทัดคำสั่ง ตัวอย่างเช่น:
--file=/some/file
--file /some/ไฟล์
อย่างไรก็ตาม โปรดทราบว่าหากคุณต้องการระบุชื่อไฟล์ที่ขึ้นต้นด้วย ~ เป็นข้อมูลในเชลล์
คำสั่งและให้เชลล์ขยาย ~ เป็นโฮมไดเร็กทอรี คุณต้องแยกชื่อไฟล์
จากตัวเลือก เนื่องจากเชลล์ไม่ปฏิบัติต่อ ~ เป็นพิเศษ เว้นแต่จะอยู่ที่จุดเริ่มต้นของ
รายการ
ข้อยกเว้นข้างต้นคือ --สี (หรือ --สี) and --การจับคู่เท่านั้น ตัวเลือกสำหรับ
ซึ่งข้อมูลเป็นทางเลือก หากหนึ่งในตัวเลือกเหล่านี้มีข้อมูล จะต้องระบุใน
รูปแบบแรกโดยใช้อักขระเท่ากับ มิฉะนั้น พีซีเร2เกรป จะถือว่าไม่มี
ข้อมูล
การจับคู่ ข้อผิดพลาด
เป็นไปได้ที่จะระบุนิพจน์ทั่วไปที่ใช้เวลานานมากในการจับคู่ไม่ได้
บางบรรทัด รูปแบบดังกล่าวมักเกี่ยวข้องกับการทำซ้ำที่ไม่ จำกัด ที่ซ้อนกัน ตัวอย่างเช่น:
(a+)*\d เมื่อจับคู่กับบรรทัด a ที่ไม่มีตัวเลขสุดท้าย การจับคู่ PCRE2
ฟังก์ชันมีขีดจำกัดทรัพยากรที่ทำให้ยกเลิกในสถานการณ์เหล่านี้ ถ้านี้
เกิดขึ้น พีซีเร2เกรป แสดงผลข้อความแสดงข้อผิดพลาดและบรรทัดที่ทำให้เกิดปัญหากับ
สตรีมข้อผิดพลาดมาตรฐาน หากมีข้อผิดพลาดดังกล่าวมากกว่า 20 รายการ พีซีเร2เกรป ยกเลิก.
การขอ --match-จำกัด ตัวเลือกของ พีซีเร2เกรป สามารถใช้เพื่อกำหนดขีดจำกัดทรัพยากรโดยรวม ที่นั่น
เป็นทางเลือกที่สองที่เรียกว่า --recursion-จำกัด ที่กำหนดขีดจำกัดของจำนวนหน่วยความจำ
(มักจะเป็นกอง) ที่ใช้ (ดูการสนทนาของตัวเลือกเหล่านี้ด้านบน)
วินิจฉัย
สถานะการออกคือ 0 หากพบรายการที่ตรงกัน 1 หากไม่พบรายการที่ตรงกัน และ 2 สำหรับไวยากรณ์
ข้อผิดพลาด เส้นที่ยาวเกินไป ไฟล์ที่ไม่มีอยู่หรือไม่สามารถเข้าถึงได้ (แม้ว่าจะพบข้อมูลที่ตรงกันใน
ไฟล์อื่นๆ) หรือข้อผิดพลาดที่ตรงกันมากเกินไป ใช้ -s ตัวเลือกในการระงับข้อความแสดงข้อผิดพลาด
เกี่ยวกับไฟล์ที่ไม่สามารถเข้าถึงได้ไม่มีผลกับโค้ดส่งคืน
ใช้ pcre2grep ออนไลน์โดยใช้บริการ onworks.net