ນີ້ແມ່ນຄໍາສັ່ງ zpcregrep ທີ່ສາມາດດໍາເນີນການໄດ້ໃນ OnWorks ຜູ້ໃຫ້ບໍລິການໂຮດຕິ້ງຟຣີໂດຍໃຊ້ຫນຶ່ງໃນຫຼາຍບ່ອນເຮັດວຽກອອນໄລນ໌ຂອງພວກເຮົາເຊັ່ນ Ubuntu Online, Fedora Online, Windows online emulator ຫຼື MAC OS online emulator
ໂຄງການ:
NAME
pcregrep - a grep ກັບ Perl-compatible regular expressions.
ສະຫຼຸບສັງລວມ
pcregrep [ທາງເລືອກ] [ຍາວ ທາງເລືອກ] [ຮູບແບບ] [ເສັ້ນທາງ1 ເສັ້ນທາງ2 ... ] zpcregrep [ທາງເລືອກ] [ຍາວ
ທາງເລືອກ] [ຮູບແບບ] [ໄຟລ໌ 1 ແຟ້ມ 2 ... ]
ລາຍລະອຽດ
pcregrep ຄົ້ນຫາໄຟລ໌ສໍາລັບຮູບແບບຕົວອັກສອນ, ໃນລັກສະນະດຽວກັນກັບຄໍາສັ່ງ grep ອື່ນໆ,
ແຕ່ມັນໃຊ້ຫ້ອງສະໝຸດການສະແດງອອກປົກກະຕິຂອງ PCRE ເພື່ອຮອງຮັບຮູບແບບທີ່ເຂົ້າກັນໄດ້
ດ້ວຍການສະແດງອອກປົກກະຕິຂອງ Perl 5. ເບິ່ງ pcresyntax(3) ສໍາລັບການສັງລວມກະສານອ້າງອີງໄວຂອງ
syntax ຮູບແບບ, ຫຼື ລວດລາຍ(3) ສໍາລັບລາຍລະອຽດເຕັມຂອງ syntax ແລະ semantics ຂອງ
ການສະແດງອອກປົກກະຕິທີ່ PCRE ສະຫນັບສະຫນູນ.
ຮູບແບບຕ່າງໆ, ບໍ່ວ່າຈະຢູ່ໃນເສັ້ນຄໍາສັ່ງຫຼືໃນໄຟລ໌ແຍກຕ່າງຫາກ, ແມ່ນໃຫ້ໂດຍບໍ່ມີ
ຕົວຂັ້ນ. ຍົກຕົວຢ່າງ:
pcregrep ວັນພະຫັດ /etc/motd
ຖ້າທ່ານພະຍາຍາມໃຊ້ຕົວຂັ້ນ (ຕົວຢ່າງ, ໂດຍອ້ອມຮອບຮູບແບບທີ່ມີ slashes, as
ແມ່ນທົ່ວໄປໃນສະຄິບ Perl), ພວກມັນຖືກຕີຄວາມຫມາຍເປັນສ່ວນຫນຶ່ງຂອງຮູບແບບ. ວົງຢືມສາມາດຂອງ
ຫຼັກສູດຖືກ ນຳ ໃຊ້ເພື່ອ ຈຳ ກັດຮູບແບບໃນເສັ້ນ ຄຳ ສັ່ງເພາະວ່າພວກມັນຖືກຕີຄວາມ ໝາຍ ໂດຍ
shell, ແລະແນ່ນອນວົງຢືມແມ່ນຕ້ອງການຖ້າຫາກວ່າຮູບແບບມີຊ່ອງຫວ່າງສີຂາວຫຼື shell
metacharacters.
ການໂຕ້ຖຽງທໍາອິດທີ່ປະຕິບັດຕາມການຕັ້ງຄ່າທາງເລືອກໃດໆແມ່ນຖືວ່າເປັນຮູບແບບດຽວທີ່ຈະເປັນ
ກົງກັນໃນເວລາທີ່ບໍ່ມີ -e neither -f ປະຈຸບັນ. ກົງກັນຂ້າມ, ໃນເວລາທີ່ຫນຶ່ງຫຼືທັງສອງທາງເລືອກເຫຼົ່ານີ້
ຖືກນໍາໃຊ້ເພື່ອກໍານົດຮູບແບບ, ການໂຕ້ຖຽງທັງຫມົດຖືກປະຕິບັດເປັນຊື່ເສັ້ນທາງ. ຢ່າງຫນ້ອຍຫນຶ່ງຂອງ -e,
-f, ຫຼືຮູບແບບການໂຕ້ຖຽງຕ້ອງໄດ້ຮັບການສະຫນອງໃຫ້.
ຖ້າບໍ່ມີໄຟລ໌ໃດຖືກລະບຸ, pcregrep ອ່ານການປ້ອນຂໍ້ມູນມາດຕະຖານ. ການປ້ອນຂໍ້ມູນມາດຕະຖານຍັງສາມາດ
ຖືກອ້າງອິງໂດຍຊື່ທີ່ປະກອບດ້ວຍຍັບຍັ້ງດຽວ. ຍົກຕົວຢ່າງ:
pcregrep ບາງຮູບແບບ /file1 - /file3
ໂດຍຄ່າເລີ່ມຕົ້ນ, ແຕ່ລະເສັ້ນທີ່ກົງກັບຮູບແບບໃດນຶ່ງຈະຖືກຄັດລອກໄປທີ່ຜົນຜະລິດມາດຕະຖານ, ແລະຖ້າ
ມີຫຼາຍກວ່າຫນຶ່ງໄຟລ໌, ຊື່ໄຟລ໌ແມ່ນຜົນຜະລິດໃນການເລີ່ມຕົ້ນຂອງແຕ່ລະແຖວ, ປະຕິບັດຕາມ
ໂດຍຈໍ້າສອງເມັດ. ຢ່າງໃດກໍ່ຕາມ, ມີທາງເລືອກທີ່ສາມາດປ່ຽນແປງວິທີການ pcregrep ປະພຶດ. ໃນ
ໂດຍສະເພາະ, ໄດ້ -M ທາງເລືອກເຮັດໃຫ້ມັນເປັນໄປໄດ້ທີ່ຈະຄົ້ນຫາສໍາລັບຮູບແບບທີ່ span ເສັ້ນ
ເຂດແດນ. ສິ່ງທີ່ກໍານົດຂອບເຂດເສັ້ນແມ່ນຄວບຄຸມໂດຍ -N (-- ແຖວໃໝ່) ທາງເລືອກ.
ຈໍານວນຫນ່ວຍຄວາມຈໍາທີ່ໃຊ້ສໍາລັບ buffering ໄຟລ໌ທີ່ກໍາລັງຖືກສະແກນຖືກຄວບຄຸມໂດຍ a
ພາລາມິເຕີທີ່ສາມາດຖືກກໍານົດໂດຍ --buffer-size ທາງເລືອກ. ຄ່າເລີ່ມຕົ້ນສໍາລັບການນີ້
ພາລາມິເຕີແມ່ນກໍານົດເວລາທີ່ pcregrep ຖືກສ້າງຂຶ້ນ, ໂດຍຄ່າເລີ່ມຕົ້ນແມ່ນ 20K. ຕັນ
ຂອງຫນ່ວຍຄວາມຈໍາສາມເທົ່າຂະຫນາດນີ້ຖືກນໍາໃຊ້ (ເພື່ອອະນຸຍາດໃຫ້ສໍາລັບການ buffering "ກ່ອນ" ແລະ "ຫຼັງ"
ສາຍ). ຂໍ້ຜິດພາດເກີດຂຶ້ນຖ້າສາຍເກີນ buffer.
ຮູບແບບສາມາດບໍ່ເກີນ 8K ຫຼື BUFSIZ bytes, ອັນໃດຈະໃຫຍ່ກວ່າ. BUFSIZ ແມ່ນ
ກຳ ນົດໃນ . ເມື່ອມີຫຼາຍກວ່າຫນຶ່ງຮູບແບບ (ກໍານົດໂດຍການນໍາໃຊ້ຂອງ -e
ແລະ / ຫຼື -f), ແຕ່ລະຮູບແບບແມ່ນໄດ້ນໍາໃຊ້ກັບແຕ່ລະເສັ້ນໃນຄໍາສັ່ງທີ່ເຂົາເຈົ້າໄດ້ກໍານົດ,
ຍົກເວັ້ນວ່າທັງຫມົດ -e ຮູບແບບການທົດລອງກ່ອນທີ່ຈະ -f ຮູບແບບ.
ໂດຍຄ່າເລີ່ມຕົ້ນ, ທັນທີທີ່ຮູບແບບຫນຶ່ງກົງກັບເສັ້ນ, ບໍ່ມີການພິຈາລະນາຮູບແບບເພີ່ມເຕີມ.
ເຖິງຢ່າງໃດກໍ່ຕາມ, ຖ້າ --ສີ (ຫຼື --ສີ) ຖືກໃຊ້ເພື່ອໃສ່ສີຂອງສາຍຍ່ອຍທີ່ກົງກັນ, ຫຼືຖ້າ -- ເທົ່ານັ້ນ-
ການຈັບຄູ່, --file-offsets, ຫຼື --line-offsets ຖືກນໍາໃຊ້ເພື່ອຜົນຜະລິດພຽງແຕ່ສ່ວນຫນຶ່ງຂອງສາຍ
ທີ່ກົງກັນ (ທັງສະແດງຕາມຕົວອັກສອນ, ຫຼືເປັນການຊົດເຊີຍ), ການສະແກນຈະດຳເນີນຕໍ່ທັນທີ
ປະຕິບັດຕາມການແຂ່ງຂັນ, ດັ່ງນັ້ນການຈັບຄູ່ຕື່ມອີກໃນເສັ້ນດຽວກັນສາມາດພົບໄດ້. ຖ້າມີ
ຮູບແບບທີ່ຫຼາກຫຼາຍ, ພວກເຂົາເຈົ້າທັງຫມົດໄດ້ຮັບການພະຍາຍາມທີ່ຍັງເຫຼືອຂອງເສັ້ນ, ແຕ່ຮູບແບບທີ່
ປະຕິບັດຕາມຫນຶ່ງທີ່ຈັບຄູ່ບໍ່ໄດ້ພະຍາຍາມຢູ່ໃນສ່ວນກ່ອນຫນ້າຂອງເສັ້ນ.
ພຶດຕິກໍານີ້ຫມາຍຄວາມວ່າຄໍາສັ່ງທີ່ຮູບແບບຫຼາຍຖືກກໍານົດສາມາດສົ່ງຜົນກະທົບຕໍ່
ຜົນຜະລິດໃນເວລາທີ່ຫນຶ່ງໃນທາງເລືອກຂ້າງເທິງນີ້ຖືກນໍາໃຊ້. ນີ້ບໍ່ແມ່ນພຶດຕິກໍາດຽວກັນກັບ
GNU grep, ເຊິ່ງປະຈຸບັນສາມາດສະແດງການຈັບຄູ່ກ່ອນຫນ້າສໍາລັບຮູບແບບຕໍ່ມາ (ຕາບໃດທີ່
ບໍ່ມີການຊ້ອນກັນ).
ຮູບແບບທີ່ສາມາດຈັບຄູ່ສະຕຣິງຫວ່າງເປົ່າແມ່ນຍອມຮັບ, ແຕ່ການຈັບຄູ່ສະຕຣິງຫວ່າງເປົ່າແມ່ນບໍ່ເຄີຍ
ຮັບຮູ້. ຕົວຢ່າງແມ່ນຮູບແບບ "(super)?(ຜູ້ຊາຍ)?", ເຊິ່ງອົງປະກອບທັງຫມົດແມ່ນ
ທາງເລືອກ. ຮູບແບບນີ້ພົບເຫັນການປະກົດຕົວຂອງທັງ "super" ແລະ "ຜູ້ຊາຍ"; ຜົນຜະລິດແຕກຕ່າງກັນ
ຈາກການຈັບຄູ່ກັບ "super|man" ໃນເວລາທີ່ພຽງແຕ່ການຈັບຄູ່ substrings ໄດ້ຖືກສະແດງ.
ຖ້າ LC_ALL or LC_CTYPE ຕົວປ່ຽນສະພາບແວດລ້ອມໄດ້ຖືກຕັ້ງໄວ້, pcregrep ໃຊ້ຄ່າເພື່ອກໍານົດ a
ທ້ອງຖິ່ນໃນເວລາທີ່ໂທຫາຫ້ອງສະຫມຸດ PCRE. ໄດ້ --ທ້ອງຖິ່ນ ທາງເລືອກສາມາດຖືກນໍາໃຊ້ເພື່ອ override ນີ້.
zpcregrep ເປັນສະຄິບ wrapper ທີ່ອະນຸຍາດໃຫ້ pcregrep ເຮັດວຽກກ່ຽວກັບໄຟລ໌ບີບອັດ gzip.
ສະຫນັບສະຫນູນ FOR ບີບອັດ ເອກະສານ
ມັນເປັນໄປໄດ້ທີ່ຈະລວບລວມ pcregrep ດັ່ງນັ້ນມັນໃຊ້ libz or libbz2 ເພື່ອອ່ານໄຟລ໌ທີ່ມີ
ຊື່ລົງທ້າຍ .gz or .bz2, ຕາມລໍາດັບ. ທ່ານສາມາດຊອກຫາວ່າ binary ຂອງທ່ານມີສະຫນັບສະຫນູນ
ສໍາລັບຫນຶ່ງຫຼືທັງສອງຂອງປະເພດໄຟລ໌ເຫຼົ່ານີ້ໂດຍການແລ່ນມັນກັບ - ຊ່ວຍ ທາງເລືອກ. ຖ້າ
ບໍ່ມີການສະຫນັບສະຫນູນທີ່ເຫມາະສົມ, ໄຟລ໌ຖືກປະຕິບັດເປັນຂໍ້ຄວາມທໍາມະດາ. ການປ້ອນຂໍ້ມູນມາດຕະຖານແມ່ນ
ປິ່ນປົວສະເໝີ.
ໄບນາຣີ ເອກະສານ
ໂດຍຄ່າເລີ່ມຕົ້ນ, ໄຟລ໌ທີ່ມີ binary zero byte ພາຍໃນ 1024 bytes ທໍາອິດແມ່ນ
ຖືກລະບຸວ່າເປັນໄຟລ໌ຄູ່, ແລະຖືກປະມວນຜົນເປັນພິເສດ. (GNU grep ຍັງກໍານົດຖານສອງ
ໄຟລ໌ໃນລັກສະນະນີ້.) ເບິ່ງ --binary-files ທາງເລືອກສໍາລັບການປ່ຽນແປງວິທີການ
ໄຟລ໌ໄບນາຣີຖືກຈັດການ.
OPTIONS
ຄໍາສັ່ງທີ່ບາງທາງເລືອກທີ່ປາກົດສາມາດສົ່ງຜົນກະທົບຕໍ່ຜົນຜະລິດ. ສໍາລັບຕົວຢ່າງ, ທັງສອງ
-h ແລະ -l ທາງເລືອກໃນການພິມຊື່ໄຟລ໌. ອັນໃດກໍໄດ້ຕາມມາໃນຄໍາສັ່ງ
ເສັ້ນຈະເປັນອັນທີ່ມີຜົນກະທົບ. ເຊັ່ນດຽວກັນ, ຍົກເວັ້ນບ່ອນທີ່ບັນທຶກໄວ້ຂ້າງລຸ່ມນີ້, ຖ້າຫາກວ່າທາງເລືອກ
ແມ່ນໃຫ້ສອງຄັ້ງ, ການຕັ້ງຄ່າຕໍ່ມາແມ່ນຖືກນໍາໃຊ້. ຄ່າຕົວເລກສຳລັບຕົວເລືອກອາດຈະຖືກຕິດຕາມດ້ວຍ
K ຫຼື M, ຫມາຍເຖິງການຄູນດ້ວຍ 1024 ຫຼື 1024*1024 ຕາມລໍາດັບ.
-- ນີ້ຈະສິ້ນສຸດບັນຊີລາຍຊື່ຂອງທາງເລືອກ. ມັນເປັນປະໂຫຍດຖ້າຫາກວ່າລາຍການຕໍ່ໄປກ່ຽວກັບ
ເສັ້ນຄໍາສັ່ງເລີ່ມຕົ້ນດ້ວຍຍັບຍັ້ງແຕ່ບໍ່ແມ່ນທາງເລືອກ. ນີ້ອະນຸຍາດໃຫ້ສໍາລັບການ
ການປະມວນຜົນຮູບແບບ ແລະຊື່ໄຟລ໌ທີ່ເລີ່ມຕົ້ນດ້ວຍຂີດໝາຍ.
-A ຈໍານວນ, --after-context=ຈໍານວນ
ຜົນຜະລິດ ຈໍານວນ ເສັ້ນຂອງບໍລິບົດຫຼັງຈາກແຕ່ລະເສັ້ນທີ່ກົງກັນ. ຖ້າຊື່ໄຟລ໌ ແລະ/ຫຼື
ຕົວເລກແຖວກຳລັງຖືກສົ່ງອອກ, ຕົວຂັ້ນຂີດໝາຍຖືກໃຊ້ແທນເຄື່ອງໝາຍຈໍ້າສອງເມັດ
ເສັ້ນບໍລິບົດ. ເສັ້ນທີ່ມີ "--" ແມ່ນຜົນຜະລິດລະຫວ່າງແຕ່ລະກຸ່ມຂອງສາຍ,
ເວັ້ນເສຍແຕ່ໃນຄວາມເປັນຈິງແລ້ວພວກມັນຕິດກັນຢູ່ໃນໄຟລ໌ປ້ອນຂໍ້ມູນ. ມູນຄ່າຂອງ ຈໍານວນ is
ຄາດວ່າຈະມີຂະຫນາດນ້ອຍຂ້ອນຂ້າງ. ແນວໃດກໍ່ຕາມ, pcregrep ຮັບປະກັນເຖິງ 8K
ຂອງຂໍ້ຄວາມຕໍ່ໄປນີ້ສາມາດໃຊ້ໄດ້ສໍາລັບຜົນໄດ້ຮັບຂອງບໍລິບົດ.
-a, --ຂໍ້ຄວາມ
ຮັກສາໄຟລ໌ໄບນາຣີເປັນຂໍ້ຄວາມ. ນີ້ແມ່ນເທົ່າກັບ --binary-files=ຂໍ້ຄວາມ.
-B ຈໍານວນ, --before-context=ຈໍານວນ
ຜົນຜະລິດ ຈໍານວນ ເສັ້ນຂອງບໍລິບົດກ່ອນແຕ່ລະເສັ້ນທີ່ກົງກັນ. ຖ້າຊື່ໄຟລ໌ ແລະ/ຫຼື
ຕົວເລກແຖວກຳລັງຖືກສົ່ງອອກ, ຕົວຂັ້ນຂີດໝາຍຖືກໃຊ້ແທນເຄື່ອງໝາຍຈໍ້າສອງເມັດ
ເສັ້ນບໍລິບົດ. ເສັ້ນທີ່ມີ "--" ແມ່ນຜົນຜະລິດລະຫວ່າງແຕ່ລະກຸ່ມຂອງສາຍ,
ເວັ້ນເສຍແຕ່ໃນຄວາມເປັນຈິງແລ້ວພວກມັນຕິດກັນຢູ່ໃນໄຟລ໌ປ້ອນຂໍ້ມູນ. ມູນຄ່າຂອງ ຈໍານວນ is
ຄາດວ່າຈະມີຂະຫນາດນ້ອຍຂ້ອນຂ້າງ. ແນວໃດກໍ່ຕາມ, pcregrep ຮັບປະກັນເຖິງ 8K
ຂອງຂໍ້ຄວາມກ່ອນຫນ້າທີ່ມີໃຫ້ສໍາລັບຜົນຜະລິດສະພາບການ.
--binary-files=ຄໍາ
ລະບຸວ່າໄຟລ໌ໄບນາຣີຈະຖືກປະມວນຜົນແນວໃດ. ຖ້າຄໍາວ່າ "ສອງ" (
default), ການຈັບຄູ່ຮູບແບບແມ່ນປະຕິບັດຢູ່ໃນໄຟລ໌ຄູ່, ແຕ່ຜົນໄດ້ຮັບພຽງແຕ່
"ໄຟລ໌ຖານສອງ matches" ເມື່ອການແຂ່ງຂັນສໍາເລັດ. ຖ້າຫາກວ່າຄໍາສັບຕ່າງໆແມ່ນ "ຂໍ້ຄວາມ", ທີ່
ເທົ່າກັບ -a or --ຂໍ້ຄວາມ ທາງເລືອກ, ໄຟລ໌ຖານສອງແມ່ນໄດ້ຮັບການປຸງແຕ່ງໃນອັນດຽວກັນ
ວິທີການເປັນໄຟລ໌ອື່ນໆ. ໃນກໍລະນີນີ້, ເມື່ອການແຂ່ງຂັນປະສົບຜົນສໍາເລັດ, ຜົນໄດ້ຮັບອາດຈະເປັນ
ຂີ້ເຫຍື້ອ binary, ເຊິ່ງສາມາດມີຜົນກະທົບ nasty ຖ້າຖືກສົ່ງໄປຫາສະຖານີ. ຖ້າຄໍາ
ແມ່ນ "ໂດຍບໍ່ມີການແຂ່ງຂັນ", ເຊິ່ງເທົ່າກັບ -I ທາງເລືອກ, ໄຟລ໌ສອງບໍ່ແມ່ນ
ປຸງແຕ່ງຢູ່ໃນທັງຫມົດ; ເຂົາເຈົ້າຖືວ່າບໍ່ມີຄວາມສົນໃຈ.
--buffer-size=ຈໍານວນ
ກໍານົດພາລາມິເຕີທີ່ຄວບຄຸມຈໍານວນຫນ່ວຍຄວາມຈໍາທີ່ໃຊ້ສໍາລັບການ buffering ໄຟລ໌ທີ່
ກໍາລັງຖືກສະແກນ.
-C ຈໍານວນ, --context=ຈໍານວນ
ຜົນຜະລິດ ຈໍານວນ ເສັ້ນຂອງບໍລິບົດທັງກ່ອນ ແລະຫຼັງແຕ່ລະເສັ້ນທີ່ກົງກັນ. ນີ້
ເທົ່າກັບການຕັ້ງຄ່າທັງສອງ -A ແລະ -B ກັບຄ່າດຽວກັນ.
-c, --ນັບ
ຢ່າສົ່ງຂໍ້ມູນແຕ່ລະສາຍຈາກໄຟລ໌ທີ່ກໍາລັງສະແກນ; ແທນ
ຜົນຜະລິດຈໍານວນເສັ້ນທີ່ຈະສະແດງໃຫ້ເຫັນຖ້າບໍ່ດັ່ງນັ້ນ. ຖ້າບໍ່ມີສາຍ
ເລືອກ, ຕົວເລກສູນແມ່ນຜົນຜະລິດ. ຖ້າໄຟລ໌ຈໍານວນຫນຶ່ງກໍາລັງຖືກສະແກນ, a
ການນັບແມ່ນຜົນຜະລິດສໍາລັບແຕ່ລະຄົນ. ຢ່າງໃດກໍຕາມ, ຖ້າຫາກວ່າ --files-with-match ທາງເລືອກແມ່ນ
ຍັງຖືກນໍາໃຊ້, ມີພຽງແຕ່ໄຟລ໌ທີ່ມີຈໍານວນຫຼາຍກ່ວາສູນແມ່ນສະແດງ. ເມື່ອໃດ
-c ຖືກນໍາໃຊ້, ໄດ້ -A, -B, ແລະ -C ຕົວເລືອກຖືກລະເລີຍ.
--ສີ, --ສີ
ຖ້າຕົວເລືອກນີ້ຖືກມອບໃຫ້ໂດຍບໍ່ມີຂໍ້ມູນໃດໆ, ມັນເທົ່າກັບ "--colour=auto".
ຖ້າຕ້ອງການຂໍ້ມູນ, ມັນຕ້ອງໄດ້ຮັບການໃຫ້ຢູ່ໃນລາຍການ shell ດຽວກັນ, ແຍກໂດຍ an
ເທົ່າກັບເຄື່ອງຫມາຍ.
--color=ມູນຄ່າ, --color=ມູນຄ່າ
ທາງເລືອກນີ້ລະບຸວ່າພາຍໃຕ້ສະຖານະການຂອງພາກສ່ວນຂອງເສັ້ນທີ່ກົງກັນ
ຮູບແບບຄວນຈະເປັນສີໃນຜົນຜະລິດ. ໂດຍຄ່າເລີ່ມຕົ້ນ, ຜົນຜະລິດບໍ່ແມ່ນ
ສີ. ມູນຄ່າ (ທີ່ເປັນທາງເລືອກ, ເບິ່ງຂ້າງເທິງ) ອາດຈະເປັນ "ບໍ່ເຄີຍ", "ສະເຫມີ", ຫຼື
"ອັດຕະໂນມັດ". ໃນກໍລະນີສຸດທ້າຍ, ການໃສ່ສີຈະເກີດຂື້ນພຽງແຕ່ຖ້າຜົນໄດ້ຮັບມາດຕະຖານເທົ່ານັ້ນ
ເຊື່ອມຕໍ່ກັບສະຖານີ. ຊັບພະຍາກອນເພີ່ມເຕີມແມ່ນໃຊ້ໃນເວລາທີ່ການໃສ່ສີ,
ເນື່ອງຈາກວ່າ pcregrep ຕ້ອງຊອກຫາການແຂ່ງຂັນທີ່ເປັນໄປໄດ້ທັງໝົດໃນແຖວ, ບໍ່ພຽງແຕ່ອັນດຽວ,
ເພື່ອສີໃຫ້ເຂົາເຈົ້າທັງຫມົດ.
ສີທີ່ຖືກນໍາໃຊ້ສາມາດຖືກກໍານົດໂດຍການຕັ້ງຄ່າຕົວແປສະພາບແວດລ້ອມ
PCREGREP_COLOUR ຫຼື PCREGREP_COLOR. ຄ່າຂອງຕົວແປນີ້ຄວນຈະເປັນສະຕຣິງ
ຂອງສອງຕົວເລກ, ແຍກດ້ວຍເຄື່ອງໝາຍຈຸດ. ເຂົາເຈົ້າໄດ້ຖືກຄັດລອກໂດຍກົງເຂົ້າໄປໃນ
ການຄວບຄຸມສະຕຣິງສໍາລັບການຕັ້ງສີຢູ່ໃນ terminal, ສະນັ້ນມັນເປັນຄວາມຮັບຜິດຊອບຂອງທ່ານທີ່ຈະ
ຮັບປະກັນວ່າພວກເຂົາມີຄວາມ ໝາຍ. ຖ້າບໍ່ມີຕົວແປສະພາບແວດລ້ອມໃດຖືກຕັ້ງ, the
ຄ່າເລີ່ມຕົ້ນແມ່ນ "1;31", ເຊິ່ງເຮັດໃຫ້ສີແດງ.
-D ການປະຕິບັດ, --ອຸປະກອນ=ການປະຕິບັດ
ຖ້າເສັ້ນທາງການປ້ອນຂໍ້ມູນບໍ່ແມ່ນໄຟລ໌ປົກກະຕິຫຼືໄດເລກະທໍລີ, "ການປະຕິບັດ" ກໍານົດວິທີການຂອງມັນ
ແມ່ນຈະໄດ້ຮັບການປຸງແຕ່ງ. ຄ່າທີ່ຖືກຕ້ອງແມ່ນ "ອ່ານ" (ຄ່າເລີ່ມຕົ້ນ) ຫຼື "ຂ້າມ" (ຢ່າງງຽບໆ
ຂ້າມທາງ).
-d ການປະຕິບັດ, --directories=ການປະຕິບັດ
ຖ້າເສັ້ນທາງການປ້ອນຂໍ້ມູນເປັນໄດເລກະທໍລີ, "ການປະຕິບັດ" ກໍານົດວິທີການປຸງແຕ່ງມັນ.
ຄ່າທີ່ຖືກຕ້ອງແມ່ນ "ອ່ານ" (ຄ່າເລີ່ມຕົ້ນໃນສະພາບແວດລ້ອມທີ່ບໍ່ແມ່ນ Windows, ສໍາລັບ
ຄວາມເຂົ້າກັນໄດ້ກັບ GNU grep), "recurse" (ເທົ່າກັບ -r ທາງເລືອກ), ຫຼື "ຂ້າມ"
(ຢ່າງງຽບໆຂ້າມເສັ້ນທາງ, ຄ່າເລີ່ມຕົ້ນໃນສະພາບແວດລ້ອມ Windows). ໃນ "ອ່ານ"
ກໍລະນີ, ໄດເລກະທໍລີຖືກອ່ານຄືກັບວ່າມັນເປັນໄຟລ໌ທໍາມະດາ. ໃນບາງການດໍາເນີນງານ
ລະ ບົບ ຜົນ ກະ ທົບ ຂອງ ການ ອ່ານ ລະ ບົບ ດັ່ງ ກ່າວ ເປັນ ການ ສິ້ນ ສຸດ ຂອງ ໄຟລ ໌ ທັນ ທີ ທັນ ໃດ;
ໃນຄົນອື່ນມັນອາດຈະເຮັດໃຫ້ເກີດຄວາມຜິດພາດ.
-e ຮູບແບບ, --regex=ຮູບແບບ, --regexp=ຮູບແບບ
ລະບຸຮູບແບບທີ່ຈະຈັບຄູ່. ທາງເລືອກນີ້ສາມາດຖືກນໍາໃຊ້ຫຼາຍຄັ້ງໃນຄໍາສັ່ງ
ເພື່ອລະບຸຮູບແບບຈໍານວນຫນຶ່ງ. ມັນຍັງສາມາດຖືກນໍາໃຊ້ເປັນວິທີການກໍານົດດຽວ
ຮູບແບບທີ່ເລີ່ມຕົ້ນດ້ວຍຂີດໝາຍ. ເມື່ອໃດ -e ຖືກນໍາໃຊ້, ບໍ່ມີຮູບແບບການໂຕ້ຖຽງຖືກປະຕິບັດ
ຈາກບັນທັດຄໍາສັ່ງ; ການໂຕ້ຖຽງທັງຫມົດຖືກປະຕິບັດເປັນຊື່ໄຟລ໌. ບໍ່ມີ
ຈໍາກັດຈໍານວນຂອງຮູບແບບ. ພວກເຂົາເຈົ້າຖືກນໍາໃຊ້ກັບແຕ່ລະເສັ້ນໃນຄໍາສັ່ງໃນ
ທີ່ເຂົາເຈົ້າຖືກກໍານົດຈົນກ່ວາຫນຶ່ງກົງກັນ.
If -f ຖືກນໍາໃຊ້ກັບ -e, ຮູບແບບເສັ້ນຄໍາສັ່ງຖືກຈັບຄູ່ກ່ອນ, ຕາມດ້ວຍ
ຮູບແບບຈາກໄຟລ໌ (s), ເປັນເອກະລາດຂອງຄໍາສັ່ງທີ່ທາງເລືອກເຫຼົ່ານີ້
ຖືກກໍານົດ. ໃຫ້ສັງເກດວ່າການນໍາໃຊ້ຫຼາຍ -e ບໍ່ຄືກັນກັບຮູບແບບດຽວ
ດ້ວຍທາງເລືອກ. ຕົວຢ່າງ, X|Y ຊອກຫາຕົວອັກສອນທໍາອິດໃນແຖວທີ່ເປັນ
X ຫຼື Y, ໃນຂະນະທີ່ສອງຮູບແບບຖືກມອບໃຫ້ແຍກຕ່າງຫາກ, ດ້ວຍ X ກ່ອນ, pcregrep
ຊອກຫາ X ຖ້າມັນມີຢູ່, ເຖິງແມ່ນວ່າມັນຈະຕິດຕາມ Y ໃນເສັ້ນ. ມັນຊອກຫາ Y ພຽງແຕ່ຖ້າ
ບໍ່ມີ X ໃນແຖວ. ນີ້ສໍາຄັນພຽງແຕ່ຖ້າຫາກວ່າທ່ານກໍາລັງໃຊ້ -o or --colo(u)r
ເພື່ອສະແດງສ່ວນຂອງເສັ້ນທີ່ກົງກັນ.
--ຍົກເວັ້ນ=ຮູບແບບ
ໄຟລ໌ (ແຕ່ບໍ່ແມ່ນໄດເລກະທໍລີ) ທີ່ມີຊື່ກົງກັບຮູບແບບແມ່ນຂ້າມໄປໂດຍບໍ່ມີການ
ກຳລັງປະມວນຜົນ. ນີ້ໃຊ້ກັບໄຟລ໌ທັງຫມົດ, ບໍ່ວ່າຈະຢູ່ໃນລາຍການຄໍາສັ່ງ,
ໄດ້ມາຈາກ --file-list, ຫຼືໂດຍການສະແກນໄດເລກະທໍລີ. ຮູບແບບແມ່ນ PCRE
ການສະແດງອອກປົກກະຕິ, ແລະຖືກຈັບຄູ່ກັບອົງປະກອບສຸດທ້າຍຂອງຊື່ໄຟລ໌,
ບໍ່ແມ່ນເສັ້ນທາງທັງຫມົດ. ໄດ້ -F, -w, ແລະ -x ຕົວເລືອກບໍ່ໄດ້ໃຊ້ກັບຮູບແບບນີ້.
ທາງເລືອກອາດຈະໄດ້ຮັບຈໍານວນຂອງເວລາໃດຫນຶ່ງໃນຄໍາສັ່ງທີ່ຈະລະບຸຫຼາຍ
ຮູບແບບ. ຖ້າຊື່ໄຟລ໌ກົງກັບທັງສອງອັນ --ລວມ ແລະຫນຶ່ງ --ຍົກເວັ້ນ ຮູບແບບ, ມັນ
ຖືກຍົກເວັ້ນ. ບໍ່ມີຮູບແບບສັ້ນສໍາລັບທາງເລືອກນີ້.
--exclude-from=ຊື່ເອກະສານ
ປະຕິບັດຕໍ່ແຕ່ລະແຖວທີ່ບໍ່ຫວ່າງຂອງໄຟລ໌ເປັນຂໍ້ມູນສໍາລັບການ --ຍົກເວັ້ນ ທາງເລືອກ. ແມ່ນຫຍັງ
ປະກອບເປັນເສັ້ນໃຫມ່ໃນເວລາທີ່ການອ່ານໄຟລ໌ແມ່ນຄ່າເລີ່ມຕົ້ນຂອງລະບົບປະຕິບັດການ.
ໄດ້ -- ແຖວໃໝ່ ທາງເລືອກບໍ່ມີຜົນຕໍ່ທາງເລືອກນີ້. ທາງເລືອກນີ້ອາດຈະໄດ້ຮັບຫຼາຍກວ່າ
ຫຼາຍກວ່າຫນຶ່ງຄັ້ງເພື່ອກໍານົດຈໍານວນໄຟລ໌ທີ່ຈະອ່ານ.
--exclude-dir=ຮູບແບບ
ລາຍການທີ່ມີຊື່ກົງກັບຮູບແບບແມ່ນຂ້າມໂດຍບໍ່ມີການດໍາເນີນການ,
ໃດກໍ່ຕາມການຕັ້ງຄ່າຂອງ - ການຮວບຮວມ ທາງເລືອກ. ນີ້ໃຊ້ກັບທຸກໄດເລກະທໍລີ,
ບໍ່ວ່າຈະຢູ່ໃນເສັ້ນຄໍາສັ່ງ, ໄດ້ມາຈາກ --file-list, ຫຼືໂດຍການສະແກນ a
ໄດເລກະທໍລີຫຼັກ. ຮູບແບບແມ່ນການສະແດງຜົນປົກກະຕິຂອງ PCRE, ແລະຖືກຈັບຄູ່
ຕໍ່ກັບອົງປະກອບສຸດທ້າຍຂອງຊື່ໄດເລກະທໍລີ, ບໍ່ແມ່ນເສັ້ນທາງທັງຫມົດ. ໄດ້ -F,
-w, ແລະ -x ຕົວເລືອກບໍ່ໄດ້ໃຊ້ກັບຮູບແບບນີ້. ທາງເລືອກທີ່ອາດຈະໄດ້ຮັບການໃດໆ
ຈຳນວນເທື່ອເພື່ອລະບຸຫຼາຍກວ່າໜຶ່ງຮູບແບບ. ຖ້າໄດເລກະທໍລີ
ກົງກັບທັງສອງ --include-dir ແລະ --exclude-dir, ມັນໄດ້ຖືກຍົກເວັ້ນ. ບໍ່ມີສັ້ນ
ແບບຟອມສໍາລັບທາງເລືອກນີ້.
-F, --fixed-strings
ແປຮູບແບບການຈັບຄູ່ຂໍ້ມູນແຕ່ລະອັນເປັນລາຍການຂອງສະຕຣິງຄົງທີ່, ແຍກໂດຍ
newlines, ແທນທີ່ຈະເປັນການສະແດງອອກປົກກະຕິ. ສິ່ງທີ່ປະກອບເປັນເສັ້ນໃຫມ່ສໍາລັບ
ຈຸດປະສົງນີ້ແມ່ນຄວບຄຸມໂດຍ -- ແຖວໃໝ່ ທາງເລືອກ. ທ -w (ກົງກັບຄໍາສັບຕ່າງໆ) ແລະ
-x (ກົງກັບເສັ້ນທັງຫມົດ) ທາງເລືອກສາມາດນໍາໃຊ້ກັບ -F. ພວກເຂົາເຈົ້ານໍາໃຊ້ກັບແຕ່ລະຄົນ
ສາຍຄົງ. ເສັ້ນຖືກເລືອກຖ້າມີສາຍຄົງທີ່ໃດນຶ່ງຢູ່ໃນນັ້ນ
(ຂຶ້ນກັບ -w or -x, ຖ້າມີ). ຕົວເລືອກນີ້ໃຊ້ກັບຮູບແບບທີ່
ຖືກຈັບຄູ່ກັບເນື້ອໃນຂອງໄຟລ໌; ມັນບໍ່ໃຊ້ກັບຮູບແບບຕ່າງໆ
ກໍານົດໂດຍໃດໆຂອງ --ລວມ or --ຍົກເວັ້ນ ຕົວເລືອກ
-f ຊື່ເອກະສານ, --file=ຊື່ເອກະສານ
ອ່ານຮູບແບບຈາກໄຟລ໌, ຫນຶ່ງຕໍ່ແຖວ, ແລະຈັບຄູ່ກັບແຕ່ລະແຖວຂອງ
ວັດສະດຸປ້ອນ. ສິ່ງທີ່ປະກອບເປັນເສັ້ນໃຫມ່ໃນເວລາທີ່ອ່ານໄຟລ໌ແມ່ນການດໍາເນີນງານ
ຄ່າເລີ່ມຕົ້ນຂອງລະບົບ. ໄດ້ -- ແຖວໃໝ່ ທາງເລືອກບໍ່ມີຜົນຕໍ່ທາງເລືອກນີ້. ຕິດຕາມ
ພື້ນທີ່ສີຂາວຖືກລຶບອອກຈາກແຕ່ລະເສັ້ນ, ແລະເສັ້ນຫວ່າງຖືກລະເລີຍ. ຫວ່າງເປົ່າ
ໄຟລ໌ບໍ່ມີຮູບແບບ ແລະດັ່ງນັ້ນຈຶ່ງບໍ່ກົງກັນ. ເບິ່ງຄໍາເຫັນ
ກ່ຽວກັບຫຼາຍຮູບແບບທຽບກັບຮູບແບບດຽວກັບທາງເລືອກໃນການ
ລາຍລະອຽດຂອງ -e ຂ້າງເທິງ.
ຖ້າຕົວເລືອກນີ້ຖືກມອບໃຫ້ຫຼາຍກວ່າຫນຶ່ງຄັ້ງ, ໄຟລ໌ທີ່ລະບຸໄວ້ທັງຫມົດຈະຖືກອ່ານ. ຂໍ້ມູນ
ເສັ້ນແມ່ນຜົນຜະລິດຖ້າຫາກວ່າຮູບແບບໃດກົງກັນກັບມັນ. ຊື່ໄຟລ໌ສາມາດເປັນ "-"
ເພື່ອອ້າງອີງໃສ່ວັດສະດຸປ້ອນມາດຕະຖານ. ເມື່ອໃດ -f ຖືກນໍາໃຊ້, ຮູບແບບທີ່ລະບຸໄວ້ໃນ
ເສັ້ນຄໍາສັ່ງໂດຍໃຊ້ -e ອາດຈະມີຢູ່; ພວກມັນຖືກທົດສອບກ່ອນໄຟລ໌
ຮູບແບບ. ຢ່າງໃດກໍ່ຕາມ, ບໍ່ມີຮູບແບບອື່ນທີ່ເອົາມາຈາກເສັ້ນຄໍາສັ່ງ; ທັງໝົດ
ການໂຕ້ຖຽງຖືກປະຕິບັດເປັນຊື່ຂອງເສັ້ນທາງທີ່ຈະຄົ້ນຫາ.
--file-list=ຊື່ເອກະສານ
ອ່ານລາຍການໄຟລ໌ ແລະ/ຫຼືໄດເລກະທໍລີທີ່ຈະສະແກນຈາກລາຍການທີ່ໃຫ້ໄວ້
ໄຟລ໌, ຫນຶ່ງຕໍ່ແຖວ. ຊ່ອງຫວ່າງທາງຫລັງແມ່ນເອົາອອກຈາກແຕ່ລະແຖວ, ແລະຫວ່າງເປົ່າ
ສາຍຖືກລະເລີຍ. ເສັ້ນ ທາງ ເຫຼົ່າ ນີ້ ແມ່ນ ໄດ້ ຮັບ ການ ປຸງ ແຕ່ງ ກ່ອນ ທີ່ ຈະ ມີ ລະ ບຸ ໄວ້ ໃນ
ເສັ້ນຄໍາສັ່ງ. ຊື່ໄຟລ໌ສາມາດຖືກມອບໃຫ້ເປັນ "-" ເພື່ອອ້າງອີງໃສ່ວັດສະດຸປ້ອນມາດຕະຖານ.
If --file ແລະ --file-list ທັງສອງຖືກລະບຸເປັນ "-", ຮູບແບບແມ່ນອ່ານກ່ອນ.
ນີ້ແມ່ນເປັນປະໂຫຍດພຽງແຕ່ໃນເວລາທີ່ວັດສະດຸປ້ອນມາດຕະຖານເປັນ terminal, ຈາກທີ່ຕໍ່ໄປ
ແຖວ (ບັນຊີລາຍຊື່ຂອງໄຟລ໌) ສາມາດອ່ານໄດ້ຫຼັງຈາກຕົວຊີ້ບອກເອກະສານສິ້ນສຸດ. ຖ້ານີ້
ທາງເລືອກແມ່ນໄດ້ຮັບຫຼາຍກວ່າຫນຶ່ງຄັ້ງ, ທັງຫມົດໄຟລ໌ທີ່ກໍານົດໄວ້ແມ່ນໄດ້ອ່ານ.
--file-offsets
ແທນທີ່ຈະສະແດງໃຫ້ເຫັນເສັ້ນຫຼືພາກສ່ວນຂອງເສັ້ນທີ່ກົງກັນ, ສະແດງໃຫ້ເຫັນແຕ່ລະການແຂ່ງຂັນເປັນ
ຊົດເຊີຍຈາກການເລີ່ມຕົ້ນຂອງໄຟລ໌ ແລະຄວາມຍາວ, ແຍກດ້ວຍເຄື່ອງໝາຍຈຸດ. ໃນນີ້
ໂໝດ, ບໍ່ສະແດງບໍລິບົດ. ນັ້ນແມ່ນ, ໄດ້ -A, -B, ແລະ -C ຕົວເລືອກຖືກລະເລີຍ. ຖ້າ
ມີຫຼາຍກວ່າຫນຶ່ງຄໍາໃນແຖວ, ແຕ່ລະອັນແມ່ນສະແດງແຍກຕ່າງຫາກ. ນີ້
ທາງເລືອກແມ່ນສະເພາະເຊິ່ງກັນແລະກັນກັບ --line-offsets ແລະ --ການຈັບຄູ່ເທົ່ານັ້ນ.
-H, --with-filename
ບັງຄັບໃຫ້ລວມເອົາຊື່ໄຟລ໌ໃນຕອນເລີ່ມຕົ້ນຂອງສາຍຜົນຜະລິດໃນເວລາຄົ້ນຫາ
ໄຟລ໌ດຽວ. ໂດຍຄ່າເລີ່ມຕົ້ນ, ຊື່ໄຟລ໌ຈະບໍ່ສະແດງໃນກໍລະນີນີ້. ສໍາລັບການຈັບຄູ່
ສາຍ, ຊື່ໄຟລ໌ແມ່ນປະຕິບັດຕາມໂດຍຈໍ້າສອງເມັດ; ສໍາລັບເສັ້ນບໍລິບົດ, ຂີດຕໍ່
ຕົວແຍກຖືກນໍາໃຊ້. ຖ້າເລກແຖວກຳລັງຖືກສົ່ງອອກ, ມັນຈະຕິດຕາມໄຟລ໌
ຊື່
-h, --no-filename
ສະກັດກັ້ນຊື່ໄຟລ໌ຜົນຜະລິດໃນເວລາທີ່ຊອກຫາໄຟລ໌ຫຼາຍ. ໂດຍຄ່າເລີ່ມຕົ້ນ,
ຊື່ໄຟລ໌ຖືກສະແດງເມື່ອຫຼາຍໄຟລ໌ຖືກຄົ້ນຫາ. ສໍາລັບສາຍທີ່ກົງກັນ, ໄດ້
ຊື່ໄຟລ໌ແມ່ນຕິດຕາມດ້ວຍຈໍ້າສອງເມັດ; ສຳລັບເສັ້ນບໍລິບົດ, ຕົວຂັ້ນຂີດໝາຍຖືກໃຊ້.
ຖ້າຕົວເລກແຖວຖືກສົ່ງອອກ, ມັນປະຕິບັດຕາມຊື່ໄຟລ໌.
- ຊ່ວຍ ອອກຂໍ້ຄວາມຊ່ວຍເຫຼືອ, ໃຫ້ລາຍລະອຽດໂດຍຫຍໍ້ຂອງທາງເລືອກຄໍາສັ່ງແລະປະເພດໄຟລ໌
ສະຫນັບສະຫນູນ, ແລະຫຼັງຈາກນັ້ນອອກ. ສິ່ງອື່ນໃດຢູ່ໃນເສັ້ນຄໍາສັ່ງແມ່ນຖືກລະເລີຍ.
-I ຮັກສາໄຟລ໌ໄບນາຣີວ່າບໍ່ເຄີຍກົງກັນ. ນີ້ແມ່ນເທົ່າກັບ --binary-
ໄຟ=ໂດຍບໍ່ມີການແຂ່ງຂັນ.
-i, -- ignore-case
ບໍ່ສົນໃຈຄວາມແຕກຕ່າງຂອງຕົວພິມໃຫຍ່/ນ້ອຍໃນລະຫວ່າງການປຽບທຽບ.
--ລວມ=ຮູບແບບ
ຖ້າມີ --ລວມ ຮູບແບບແມ່ນໄດ້ລະບຸໄວ້, ພຽງແຕ່ໄຟລ໌ທີ່ໄດ້ຮັບການປຸງແຕ່ງແມ່ນ
ຮູບແບບທີ່ກົງກັບຮູບແບບໃດນຶ່ງ (ແລະບໍ່ກົງກັນກັບ --ຍົກເວັ້ນ ຮູບແບບ).
ຕົວເລືອກນີ້ບໍ່ມີຜົນຕໍ່ໄດເລກະທໍລີ, ແຕ່ມັນໃຊ້ກັບໄຟລ໌ທັງຫມົດ, ບໍ່ວ່າຈະເປັນ
ລະບຸໄວ້ໃນເສັ້ນຄໍາສັ່ງ, ໄດ້ມາຈາກ --file-list, ຫຼືໂດຍການສະແກນ a
ໄດເລກະທໍລີ. ຮູບແບບແມ່ນການສະແດງຜົນປົກກະຕິຂອງ PCRE, ແລະຖືກຈັບຄູ່ກັບ
ອົງປະກອບສຸດທ້າຍຂອງຊື່ໄຟລ໌, ບໍ່ແມ່ນເສັ້ນທາງທັງຫມົດ. ໄດ້ -F, -w, ແລະ -x
ຕົວເລືອກບໍ່ໄດ້ໃຊ້ກັບຮູບແບບນີ້. ທາງເລືອກທີ່ອາດຈະໄດ້ຮັບຈໍານວນໃດຫນຶ່ງຂອງ
ເທື່ອ. ຖ້າຊື່ໄຟລ໌ກົງກັບທັງສອງອັນ --ລວມ ແລະຫນຶ່ງ --ຍົກເວັ້ນ ຮູບແບບ, ມັນແມ່ນ
ຍົກເວັ້ນ. ບໍ່ມີຮູບແບບສັ້ນສໍາລັບທາງເລືອກນີ້.
--include-from=ຊື່ເອກະສານ
ປະຕິບັດຕໍ່ແຕ່ລະແຖວທີ່ບໍ່ຫວ່າງຂອງໄຟລ໌ເປັນຂໍ້ມູນສໍາລັບການ --ລວມ ທາງເລືອກ. ແມ່ນຫຍັງ
constitutes a newline ສໍາລັບຈຸດປະສົງນີ້ແມ່ນມາດຕະຖານຂອງລະບົບປະຕິບັດການ. ໄດ້
-- ແຖວໃໝ່ ທາງເລືອກບໍ່ມີຜົນຕໍ່ທາງເລືອກນີ້. ທາງເລືອກນີ້ອາດຈະໄດ້ຮັບການໃດໆ
ຈໍານວນຂອງເວລາ; ໄຟລ໌ທັງຫມົດໄດ້ຖືກອ່ານ.
--include-dir=ຮູບແບບ
ຖ້າມີ --include-dir ຮູບແບບແມ່ນໄດ້ລະບຸໄວ້, ມີພຽງແຕ່ລະບົບທີ່ມີ
ປະມວນຜົນແມ່ນອັນທີ່ກົງກັບຮູບແບບໜຶ່ງ (ແລະບໍ່ກົງກັບ
--exclude-dir ຮູບແບບ). ນີ້ໃຊ້ກັບທຸກໄດເລກະທໍລີ, ບໍ່ວ່າຈະຢູ່ໃນລາຍການ
ເສັ້ນຄໍາສັ່ງ, ໄດ້ມາຈາກ --file-list, ຫຼືໂດຍການສະແກນລາຍຊື່ພໍ່ແມ່. ໄດ້
ຮູບແບບແມ່ນການສະແດງຜົນປົກກະຕິຂອງ PCRE, ແລະຖືກຈັບຄູ່ກັບອົງປະກອບສຸດທ້າຍ
ຂອງຊື່ໄດເລກະທໍລີ, ບໍ່ແມ່ນເສັ້ນທາງທັງຫມົດ. ໄດ້ -F, -w, ແລະ -x ທາງເລືອກບໍ່ໄດ້
ໃຊ້ກັບຮູບແບບນີ້. ທາງເລືອກອາດຈະໄດ້ຮັບຈໍານວນຂອງເວລາໃດຫນຶ່ງ. ຖ້າ ກ
ໄດເລກະທໍລີກົງກັບທັງສອງ --include-dir ແລະ --exclude-dir, ມັນໄດ້ຖືກຍົກເວັ້ນ. ມີ
ບໍ່ມີຮູບແບບສັ້ນສໍາລັບທາງເລືອກນີ້.
-L, --files-without-match
ແທນທີ່ຈະອອກສາຍຈາກໄຟລ໌, ພຽງແຕ່ອອກຊື່ຂອງໄຟລ໌
ທີ່ບໍ່ມີສາຍທີ່ຈະໄດ້ຮັບການຜະລິດຕະພັນ. ແຕ່ລະຊື່ໄຟລ໌ແມ່ນ
ຜົນຜະລິດຄັ້ງດຽວ, ໃນເສັ້ນແຍກຕ່າງຫາກ.
-l, --files-with-match
ແທນທີ່ຈະອອກສາຍຈາກໄຟລ໌, ພຽງແຕ່ອອກຊື່ຂອງໄຟລ໌
ປະກອບມີສາຍທີ່ຈະໄດ້ຮັບການ output. ແຕ່ລະຊື່ໄຟລ໌ແມ່ນຜົນຜະລິດຄັ້ງດຽວ, ສຸດ
ເສັ້ນແຍກຕ່າງຫາກ. ການຊອກຫາປົກກະຕິຈະຢຸດທັນທີທີ່ພົບເສັ້ນທີ່ກົງກັນ
ໄຟລ໌. ຢ່າງໃດກໍຕາມ, ຖ້າຫາກວ່າ -c (ນັບ) ທາງເລືອກຍັງຖືກນໍາໃຊ້, ການຈັບຄູ່ສືບຕໍ່ຢູ່ໃນ
ເພື່ອໃຫ້ໄດ້ຮັບການນັບທີ່ຖືກຕ້ອງ, ແລະໄຟລ໌ທີ່ມີຢ່າງຫນ້ອຍຫນຶ່ງທີ່ກົງກັນ
ຖືກລະບຸໄວ້ພ້ອມກັບການນັບຂອງພວກເຂົາ. ການນໍາໃຊ້ທາງເລືອກນີ້ກັບ -c ແມ່ນວິທີການຂອງ
ສະກັດກັ້ນລາຍຊື່ໄຟລ໌ທີ່ບໍ່ກົງກັນ.
--ປ້າຍຊື່=ຊື່
ຕົວເລືອກນີ້ສະຫນອງຊື່ທີ່ຈະໃຊ້ສໍາລັບການປ້ອນຂໍ້ມູນມາດຕະຖານໃນເວລາທີ່ຊື່ໄຟລ໌
ກໍາລັງຖືກອອກ. ຖ້າບໍ່ສະໜອງໃຫ້, "(ການປ້ອນຂໍ້ມູນມາດຕະຖານ)" ແມ່ນໃຊ້. ບໍ່ມີສັ້ນ
ແບບຟອມສໍາລັບທາງເລືອກນີ້.
--line-buffed
ເມື່ອທາງເລືອກນີ້ຖືກມອບໃຫ້, ວັດສະດຸປ້ອນຈະຖືກອ່ານແລະປະມວນຜົນເປັນແຖວ, ແລະ
ຜົນຜະລິດແມ່ນ flushed ຫຼັງຈາກແຕ່ລະລາຍລັກອັກສອນ. ໂດຍຄ່າເລີ່ມຕົ້ນ, ການປ້ອນຂໍ້ມູນຖືກອ່ານເປັນຕ່ອນໃຫຍ່,
ເວັ້ນເສຍແຕ່ວ່າ pcregrep ສາມາດກໍານົດວ່າມັນກໍາລັງອ່ານຈາກ terminal (ເຊິ່ງແມ່ນ
ໃນປັດຈຸບັນເປັນໄປໄດ້ພຽງແຕ່ໃນສະພາບແວດລ້ອມຄ້າຍຄື Unix). Output ກັບ terminal ແມ່ນ
ປົກກະຕິແລ້ວ flushed ອັດຕະໂນມັດໂດຍລະບົບປະຕິບັດການ. ທາງເລືອກນີ້ສາມາດເປັນ
ມີປະໂຫຍດໃນເວລາທີ່ວັດສະດຸປ້ອນຫຼືຜົນຜະລິດຖືກຕິດກັບທໍ່ແລະທ່ານບໍ່ຕ້ອງການ
pcregrep ເພື່ອ buffer ເຖິງຈໍານວນຂະຫນາດໃຫຍ່ຂອງຂໍ້ມູນ. ຢ່າງໃດກໍຕາມ, ການນໍາໃຊ້ຂອງມັນຈະມີຜົນກະທົບ
ການປະຕິບັດ, ແລະ -M (multiline) ທາງເລືອກຢຸດເຮັດວຽກ.
--line-offsets
ແທນທີ່ຈະສະແດງເສັ້ນຫຼືພາກສ່ວນຂອງເສັ້ນທີ່ກົງກັນ, ສະແດງໃຫ້ເຫັນແຕ່ລະການແຂ່ງຂັນເປັນເສັ້ນ
ຕົວເລກ, ຄ່າຊົດເຊີຍຈາກການເລີ່ມຕົ້ນຂອງເສັ້ນ, ແລະຄວາມຍາວ. ເລກແຖວແມ່ນ
ສິ້ນສຸດໂດຍຈໍ້າສອງເມັດ (ຕາມປົກກະຕິ; ເບິ່ງ -n option), ແລະຄ່າຊົດເຊີຍ ແລະຄວາມຍາວ
ຖືກແຍກດ້ວຍເຄື່ອງໝາຍຈຸດ. ໃນຮູບແບບນີ້, ບໍ່ມີສະພາບການສະແດງໃຫ້ເຫັນ. ນັ້ນແມ່ນ, ໄດ້ -A,
-B, ແລະ -C ຕົວເລືອກຖືກລະເລີຍ. ຖ້າມີຫຼາຍກວ່າຫນຶ່ງຄໍາໃນແຖວ, ແຕ່ລະຄົນ
ຂອງພວກເຂົາແມ່ນສະແດງໃຫ້ເຫັນແຍກຕ່າງຫາກ. ທາງເລືອກນີ້ແມ່ນສະເພາະເຊິ່ງກັນແລະກັນກັບ --file-
ການຊົດເຊີຍ ແລະ --ການຈັບຄູ່ເທົ່ານັ້ນ.
--ທ້ອງຖິ່ນ=ຊື່ທ້ອງຖິ່ນ
ຕົວເລືອກນີ້ລະບຸສະຖານທີ່ທີ່ຈະໃຊ້ສໍາລັບການຈັບຄູ່ຮູບແບບ. ມັນ overrides ໄດ້
ມູນຄ່າໃນ LC_ALL or LC_CTYPE ຕົວແປສະພາບແວດລ້ອມ. ຖ້າບໍ່ມີທ້ອງຖິ່ນ
ລະບຸໄວ້, ຄ່າເລີ່ມຕົ້ນຂອງຫ້ອງສະໝຸດ PCRE (ປົກກະຕິແລ້ວແມ່ນ "C" locale) ຖືກໃຊ້. ມີ
ບໍ່ມີຮູບແບບສັ້ນສໍາລັບທາງເລືອກນີ້.
--ຂີດຈຳກັດການແຂ່ງຂັນ=ຈໍານວນ
ການປຸງແຕ່ງບາງຮູບແບບການສະແດງອອກປົກກະຕິສາມາດຮຽກຮ້ອງໃຫ້ມີຈໍານວນຂະຫນາດໃຫຍ່ຫຼາຍ
ຫນ່ວຍຄວາມຈໍາ, ນໍາພາໃນບາງກໍລະນີທີ່ຈະຂັດໂຄງການຖ້າຫາກວ່າບໍ່ພຽງພໍສາມາດໃຊ້ໄດ້.
ຮູບແບບອື່ນໆອາດຈະໃຊ້ເວລາຫຼາຍເພື່ອຄົ້ນຫາການຈັບຄູ່ທີ່ເປັນໄປໄດ້ທັງຫມົດ
ສາຍ. ໄດ້ pcre_exec() ຟັງຊັນທີ່ເອີ້ນໂດຍ pcregrep ເພື່ອເຮັດການຈັບຄູ່
ມີສອງຕົວກໍານົດການທີ່ສາມາດຈໍາກັດຊັບພະຍາກອນທີ່ມັນໃຊ້.
ໄດ້ --ຂີດຈຳກັດການແຂ່ງຂັນ ທາງເລືອກສະຫນອງວິທີການຈໍາກັດການນໍາໃຊ້ຊັບພະຍາກອນໃນເວລາທີ່
ຮູບແບບການປຸງແຕ່ງທີ່ຈະບໍ່ກົງກັນ, ແຕ່ວ່າມີຂະຫນາດໃຫຍ່ຫຼາຍ
ຈໍານວນຄວາມເປັນໄປໄດ້ໃນຕົ້ນໄມ້ຄົ້ນຫາຂອງພວກເຂົາ. ຕົວຢ່າງຄລາສສິກແມ່ນຮູບແບບ
ທີ່ໃຊ້ການຊໍ້າຄືນທີ່ບໍ່ຈຳກັດທີ່ວາງໄວ້. ພາຍໃນ, PCRE ໃຊ້ຟັງຊັນທີ່ເອີ້ນວ່າ
ການແຂ່ງຂັນ() ເຊິ່ງມັນເອີ້ນຊ້ຳໆ (ບາງຄັ້ງຊ້ຳໆ). ຂອບເຂດກໍານົດໂດຍ
--ຂີດຈຳກັດການແຂ່ງຂັນ ແມ່ນ imposed ໃນຈໍານວນຄັ້ງຫນ້າທີ່ນີ້ເອີ້ນວ່າໃນໄລຍະ a
match, ເຊິ່ງມີຜົນກະທົບຂອງການຈໍາກັດຈໍານວນຂອງ backtracking ທີ່ສາມາດໃຊ້ເວລາ
ສະຖານທີ່.
ໄດ້ --recursion-ຈຳກັດ ທາງເລືອກແມ່ນຄ້າຍຄືກັນກັບ --ຂີດຈຳກັດການແຂ່ງຂັນ, ແຕ່ແທນທີ່ຈະ
ຈໍາກັດຈໍານວນເວລາທັງຫມົດ ການແຂ່ງຂັນ() ເອີ້ນວ່າ, ມັນຈໍາກັດຄວາມເລິກ
ຂອງການໂທ recursive, ຊຶ່ງໃນທາງກັບກັນໄດ້ຈໍາກັດຈໍານວນຫນ່ວຍຄວາມຈໍາທີ່ສາມາດນໍາໃຊ້ໄດ້.
ຄວາມເລິກ recursion ເປັນຈໍານວນຂະຫນາດນ້ອຍກວ່າຈໍານວນການໂທທັງຫມົດ, ເນື່ອງຈາກວ່າ
ບໍ່ແມ່ນການໂທຫາທັງຫມົດ ການແຂ່ງຂັນ() ແມ່ນ recursive. ຂອບເຂດຈໍາກັດນີ້ແມ່ນໃຊ້ພຽງແຕ່ຖ້າມັນຖືກຕັ້ງ
ຂະຫນາດນ້ອຍກ່ວາ --ຂີດຈຳກັດການແຂ່ງຂັນ.
ບໍ່ມີຮູບແບບສັ້ນສໍາລັບທາງເລືອກເຫຼົ່ານີ້. ການຕັ້ງຄ່າເລີ່ມຕົ້ນແມ່ນໄດ້ລະບຸໄວ້
ເມື່ອຫ້ອງສະຫມຸດ PCRE ຖືກລວບລວມ, ໂດຍຄ່າເລີ່ມຕົ້ນແມ່ນ 10 ລ້ານ.
-M, --multiline
ອະນຸຍາດໃຫ້ຮູບແບບກົງກັນຫຼາຍກວ່າໜຶ່ງແຖວ. ໃນເວລາທີ່ທາງເລືອກນີ້ໄດ້ຖືກມອບໃຫ້, ຮູບແບບ
ອາດຈະມີຕົວອັກສອນແຖວໃໝ່ທີ່ເປັນປະໂຫຍດ ແລະການເກີດຂຶ້ນພາຍໃນຂອງ ^
ແລະ $ ຕົວອັກສອນ. ຜົນໄດ້ຮັບສໍາລັບການແຂ່ງຂັນທີ່ປະສົບຜົນສໍາເລັດອາດຈະປະກອບດ້ວຍຫຼາຍກວ່າຫນຶ່ງ
ເສັ້ນ, ສຸດທ້າຍແມ່ນຫນຶ່ງທີ່ການແຂ່ງຂັນໄດ້ສິ້ນສຸດລົງ. ຖ້າກົງກັນ
string ສິ້ນສຸດດ້ວຍລໍາດັບແຖວໃຫມ່, ຜົນຜະລິດຈະສິ້ນສຸດລົງໃນຕອນທ້າຍຂອງແຖວນັ້ນ.
ເມື່ອຕົວເລືອກນີ້ຖືກຕັ້ງ, ຫ້ອງສະຫມຸດ PCRE ຖືກເອີ້ນໃນໂຫມດ "multiline". ຢູ່ທີ່ນັ້ນ
ແມ່ນການຈໍາກັດຈໍານວນຂອງສາຍທີ່ສາມາດຈັບຄູ່ໄດ້, imposed ໂດຍວິທີການທີ່
pcregrep buffers ໄຟລ໌ປ້ອນຂໍ້ມູນຍ້ອນວ່າມັນສະແກນມັນ. ແນວໃດກໍ່ຕາມ, pcregrep ຮັບປະກັນວ່າ
ຢ່າງໜ້ອຍ 8K ຕົວອັກສອນ ຫຼືສ່ວນທີ່ເຫຼືອຂອງເອກະສານ (ອັນໃດສັ້ນກວ່າ)
ມີໃຫ້ສໍາລັບການຈັບຄູ່ກັນ, ແລະຄ້າຍຄືກັນກັບຕົວອັກສອນ 8K ທີ່ຜ່ານມາ (ຫຼື
ຕົວອັກສອນກ່ອນໜ້າທັງໝົດ, ຖ້າໜ້ອຍກວ່າ 8K) ແມ່ນຮັບປະກັນວ່າມີໃຫ້
ສໍາລັບການເບິ່ງເບື້ອງຫຼັງການຢືນຢັນ. ຕົວເລືອກນີ້ໃຊ້ບໍ່ໄດ້ເມື່ອການປ້ອນຂໍ້ມູນຖືກອ່ານເປັນແຖວ
ແຖວ (ເບິ່ງ --line-buffed.)
-N ປະເພດແຖວໃໝ່, -- ແຖວໃໝ່=ປະເພດແຖວໃໝ່
ຫໍສະຫມຸດ PCRE ສະຫນັບສະຫນູນຫ້າສົນທິສັນຍາທີ່ແຕກຕ່າງກັນສໍາລັບການຊີ້ບອກໃນຕອນທ້າຍຂອງ
ສາຍ. ພວກມັນເປັນລຳດັບຕົວອັກສອນດຽວ CR (carriage return) ແລະ LF
(linefeed), ລໍາດັບສອງລັກສະນະ CRLF, ສົນທິສັນຍາ "anycrlf", ເຊິ່ງ
ຮັບຮູ້ໃດໆຂອງສາມປະເພດກ່ອນຫນ້າ, ແລະສົນທິສັນຍາ "ໃດໆ", ໃນນັ້ນ
ລຳດັບການສິ້ນສຸດຂອງແຖວ Unicode ແມ່ນຖືວ່າສິ້ນສຸດແຖວ. ລໍາດັບ Unicode
ແມ່ນສາມອັນທີ່ໄດ້ກ່າວມາ, ບວກກັບ VT (ແຖບແນວຕັ້ງ, U+000B), FF (ຟີດແບບຟອມ,
U+000C), NEL (ແຖວຕໍ່ໄປ, U+0085), LS (ຕົວຂັ້ນແຖວ, U+2028), ແລະ PS (ວັກ
ຕົວແຍກ, U+2029).
ເມື່ອຫ້ອງສະຫມຸດ PCRE ຖືກສ້າງຂຶ້ນ, ລໍາດັບສິ້ນສຸດເສັ້ນເລີ່ມຕົ້ນແມ່ນຖືກກໍານົດ.
ນີ້ປົກກະຕິແລ້ວແມ່ນລໍາດັບມາດຕະຖານສໍາລັບລະບົບປະຕິບັດການ. ເວັ້ນເສຍແຕ່
ລະບຸໄວ້ເປັນຢ່າງອື່ນໂດຍຕົວເລືອກນີ້, pcregrep ໃຊ້ຄ່າເລີ່ມຕົ້ນຂອງຫ້ອງສະໝຸດ. ໄດ້
ຄ່າທີ່ເປັນໄປໄດ້ສໍາລັບຕົວເລືອກນີ້ແມ່ນ CR, LF, CRLF, ANYCRLF, ຫຼືອັນໃດກໍໄດ້. ນີ້ເຮັດໃຫ້ມັນ
ເປັນໄປໄດ້ທີ່ຈະນໍາໃຊ້ pcregrep ເພື່ອສະແກນໄຟລ໌ທີ່ມາຈາກສະພາບແວດລ້ອມອື່ນໆ
ໂດຍບໍ່ມີການປັບປຸງແກ້ໄຂປາຍເສັ້ນຂອງເຂົາເຈົ້າ. ຖ້າຂໍ້ມູນທີ່ຖືກສະແກນ
ບໍ່ເຫັນດີກັບສົນທິສັນຍາທີ່ກໍານົດໂດຍທາງເລືອກນີ້, pcregrep ອາດຈະປະຕິບັດໃນ
ວິທີແປກ. ໃຫ້ສັງເກດວ່າທາງເລືອກນີ້ບໍ່ໄດ້ນໍາໃຊ້ກັບໄຟລ໌ທີ່ລະບຸໄວ້ໂດຍ -f,
--ຍົກເວັ້ນ-ຈາກ, ຫຼື --include-ຈາກ ທາງເລືອກ, ເຊິ່ງຄາດວ່າຈະໃຊ້
ລຳດັບເສັ້ນໃໝ່ມາດຕະຖານຂອງລະບົບປະຕິບັດການ.
-n, --ເລກແຖວ
ກ່ອນໜ້າແຕ່ລະແຖວຜົນຜະລິດໂດຍໝາຍເລກແຖວຂອງມັນຢູ່ໃນໄຟລ໌, ຕິດຕາມດ້ວຍຈໍ້າສອງເມັດສຳລັບ
ເສັ້ນທີ່ກົງກັນ ຫຼືຂີດຂີດຈຳກັດສຳລັບເສັ້ນບໍລິບົດ. ຖ້າຫາກວ່າຊື່ໄຟລ໌ແມ່ນຍັງ
ຜົນຜະລິດ, ມັນນໍາຫນ້າຈໍານວນເສັ້ນ. ທາງເລືອກນີ້ຖືກບັງຄັບຖ້າ --line-offsets is
ໃຊ້ແລ້ວ.
--no-jit ຖ້າຫ້ອງສະຫມຸດ PCRE ຖືກສ້າງຂຶ້ນໂດຍສະຫນັບສະຫນູນການລວບລວມຂໍ້ມູນໃນເວລາສັ້ນໆ (ເຊິ່ງ
ເລັ່ງການຈັບຄູ່), pcregrep ອັດຕະໂນມັດເຮັດໃຫ້ການນໍາໃຊ້ນີ້, ເວັ້ນເສຍແຕ່ວ່າມັນແມ່ນ
ປິດການໃຊ້ງານຢ່າງຈະແຈ້ງໃນເວລາສ້າງ. ທາງເລືອກນີ້ສາມາດຖືກນໍາໃຊ້ເພື່ອປິດການນໍາໃຊ້ຂອງ
JIT ໃນເວລາແລ່ນ. ມັນໄດ້ຖືກສະຫນອງໃຫ້ສໍາລັບການທົດສອບແລະການເຮັດວຽກຮອບບັນຫາ. ມັນ
ບໍ່ຄວນຈະຈໍາເປັນໃນການນໍາໃຊ້ປົກກະຕິ.
-o, --ການຈັບຄູ່ເທົ່ານັ້ນ
ສະແດງໃຫ້ເຫັນພຽງແຕ່ສ່ວນຫນຶ່ງຂອງເສັ້ນທີ່ກົງກັບຮູບແບບແທນທີ່ຈະເປັນເສັ້ນທັງຫມົດ.
ໃນຮູບແບບນີ້, ບໍ່ມີສະພາບການສະແດງໃຫ້ເຫັນ. ນັ້ນແມ່ນ, ໄດ້ -A, -B, ແລະ -C ທາງເລືອກແມ່ນ
ບໍ່ສົນໃຈ. ຖ້າມີຫຼາຍກວ່າຫນຶ່ງຄໍາໃນແຖວ, ແຕ່ລະອັນຈະຖືກສະແດງ
ແຍກຕ່າງຫາກ. ຖ້າ -o ຖືກລວມກັບ -v (ປ່ຽນຄວາມຮູ້ສຶກຂອງການແຂ່ງຂັນເພື່ອຊອກຫາ
ເສັ້ນທີ່ບໍ່ກົງກັນ), ບໍ່ມີຜົນຜະລິດທີ່ຖືກສ້າງຂຶ້ນ, ແຕ່ລະຫັດກັບຄືນແມ່ນຖືກກໍານົດ
ຢ່າງເໝາະສົມ. ຖ້າສ່ວນທີ່ກົງກັນຂອງເສັ້ນຫວ່າງເປົ່າ, ບໍ່ມີຫຍັງເປັນຜົນຜະລິດ
ເວັ້ນເສຍແຕ່ວ່າຊື່ໄຟລ໌ຫຼືເລກແຖວກໍາລັງຖືກພິມ, ໃນກໍລະນີນີ້
ສະແດງຢູ່ໃນເສັ້ນຫວ່າງເປົ່າ. ທາງເລືອກນີ້ແມ່ນສະເພາະເຊິ່ງກັນແລະກັນກັບ --file-
ການຊົດເຊີຍ ແລະ --line-offsets.
-oຈໍານວນ, --ການຈັບຄູ່ເທົ່ານັ້ນ=ຈໍານວນ
ສະແດງໃຫ້ເຫັນພຽງແຕ່ສ່ວນຫນຶ່ງຂອງເສັ້ນທີ່ກົງກັບວົງເລັບການຈັບຂອງ
ຈໍານວນທີ່ໄດ້ຮັບ. ສະຫນັບສະຫນູນເຖິງ 32 ວົງເລັບຈັບ, ແລະ -o0 ແມ່ນ
ທຽບເທົ່າກັບ -o ໂດຍບໍ່ມີຕົວເລກ. ເນື່ອງຈາກວ່າທາງເລືອກເຫຼົ່ານີ້ສາມາດໄດ້ຮັບການໃຫ້ໂດຍບໍ່ມີການ
argument (ເບິ່ງຂ້າງເທິງ), ຖ້າມີການໂຕ້ຖຽງ, ມັນຕ້ອງໄດ້ຮັບການໃຫ້ໃນອັນດຽວກັນ
shell item, ຕົວຢ່າງ, -o3 ຫຼື --only-matching=2. ຄໍາເຫັນທີ່ໃຫ້ສໍາລັບການ
ກໍລະນີທີ່ບໍ່ແມ່ນການໂຕ້ຖຽງຂ້າງເທິງຍັງໃຊ້ກັບກໍລະນີນີ້. ຖ້າກໍານົດການຈັບ
ວົງເລັບບໍ່ມີຢູ່ໃນຮູບແບບ, ຫຼືບໍ່ໄດ້ຕັ້ງຢູ່ໃນການແຂ່ງຂັນ, ບໍ່ມີຫຍັງ
ແມ່ນຜົນຜະລິດເວັ້ນເສຍແຕ່ຊື່ໄຟລ໌ຫຼືເລກແຖວກໍາລັງຖືກພິມອອກ.
ຖ້າຫາກວ່າທາງເລືອກນີ້ແມ່ນໄດ້ຮັບການໃຫ້ຫຼາຍຄັ້ງ, ຫຼາຍ substrings ແມ່ນຜົນຜະລິດ, ໃນ
ສັ່ງທາງເລືອກແມ່ນໃຫ້. ຕົວຢ່າງ, -o3 -o1 -o3 ເຮັດໃຫ້ສາຍຍ່ອຍຍ່ອຍ
ຈັບຄູ່ໂດຍການຈັບວົງເລັບ 3 ແລະ 1 ແລະຈາກນັ້ນ 3 ອີກຄັ້ງເພື່ອໃຫ້ເປັນຜົນຜະລິດ. ໂດຍ
ຄ່າເລີ່ມຕົ້ນ, ບໍ່ມີຕົວແຍກ (ແຕ່ເບິ່ງຕົວເລືອກຕໍ່ໄປ).
--om-ຕົວແຍກ=ຂໍ້ຄວາມ
ລະບຸສະຕຣິງທີ່ແຍກອອກສໍາລັບການເກີດຂຶ້ນຫຼາຍອັນຂອງ -o. ຄ່າເລີ່ມຕົ້ນແມ່ນເປັນ
ສະຕຣິງຫວ່າງເປົ່າ. ສາຍແຍກແມ່ນບໍ່ເຄີຍມີສີ.
-q, --ງຽບ
ເຮັດວຽກຢ່າງງຽບໆ, ນັ້ນແມ່ນ, ສະແດງບໍ່ມີຫຍັງຍົກເວັ້ນຂໍ້ຄວາມສະແດງຂໍ້ຜິດພາດ. ສະຖານະການອອກ
ບົ່ງບອກເຖິງການຈັບຄູ່ກັນຫຼືບໍ່.
-r, - ການຮວບຮວມ
ຖ້າເສັ້ນທາງໃດ ໜຶ່ງ ເປັນໄດເລກະທໍລີ, ສະແກນເອກະສານທີ່ມັນມີຢູ່, ເອົາຄືນ
ບັນທຶກໃດໆ --ລວມ ແລະ --ຍົກເວັ້ນ ການຕັ້ງຄ່າ. ໂດຍຄ່າເລີ່ມຕົ້ນ, ໄດເລກະທໍລີຖືກອ່ານເປັນ
ໄຟລ໌ປົກກະຕິ; ໃນບາງລະບົບປະຕິບັດການນີ້ເຮັດໃຫ້ໄຟລ໌ສິ້ນສຸດທັນທີ.
ທາງເລືອກນີ້ແມ່ນ shorthand ສໍາລັບການຕັ້ງຄ່າ -d ທາງເລືອກທີ່ຈະ "recurse".
--recursion-ຈຳກັດ=ຈໍານວນ
ເບິ່ງ --ຂີດຈຳກັດການແຂ່ງຂັນ ຂ້າງເທິງ.
-s, -- ບໍ່ມີຂໍ້ຄວາມ
ສະກັດກັ້ນຂໍ້ຄວາມສະແດງຂໍ້ຜິດພາດກ່ຽວກັບໄຟລ໌ທີ່ບໍ່ມີຢູ່ຫຼືບໍ່ສາມາດອ່ານໄດ້. ໄຟລ໌ດັ່ງກ່າວແມ່ນ
ຂ້າມໄປຢ່າງງຽບໆ. ຢ່າງໃດກໍຕາມ, ລະຫັດກັບຄືນແມ່ນຍັງ 2, ເຖິງແມ່ນວ່າການຈັບຄູ່ໄດ້ພົບເຫັນ
ໃນໄຟລ໌ອື່ນໆ.
-u, --utf-8
ດໍາເນີນການໃນໂຫມດ UTF-8. ທາງເລືອກນີ້ສາມາດໃຊ້ໄດ້ພຽງແຕ່ຖ້າ PCRE ໄດ້ຖືກລວບລວມ
ດ້ວຍການສະຫນັບສະຫນູນ UTF-8. ຮູບແບບທັງໝົດ (ລວມທັງຮູບແບບຕ່າງໆ --ຍົກເວັ້ນ ແລະ
--ລວມ ທາງເລືອກ) ແລະທຸກຫົວຂໍ້ທີ່ສະແກນຕ້ອງເປັນສາຍທີ່ຖືກຕ້ອງ
ຂອງ UTF-8 ຕົວອັກສອນ.
-V, - ການປ່ຽນແປງ
ຂຽນຕົວເລກສະບັບຂອງ pcregrep ແລະຫ້ອງສະຫມຸດ PCRE ກັບມາດຕະຖານ
ຜົນຜະລິດແລະຫຼັງຈາກນັ້ນອອກ. ສິ່ງອື່ນໃດຢູ່ໃນເສັ້ນຄໍາສັ່ງແມ່ນຖືກລະເລີຍ.
-v, --invert-match
Invert ຄວາມຮູ້ສຶກຂອງຄໍາວ່າ, ດັ່ງນັ້ນເສັ້ນທີ່ເຮັດ ບໍ່ ກົງກັບໃດໆຂອງ
ຮູບແບບແມ່ນອັນທີ່ພົບເຫັນ.
-w, --word-regex, --word-regexp
ບັງຄັບຮູບແບບຕ່າງໆໃຫ້ກົງກັບຄຳສັບທັງໝົດເທົ່ານັ້ນ. ອັນນີ້ເທົ່າກັບມີ \b ຢູ່
ການເລີ່ມຕົ້ນແລະສິ້ນສຸດຂອງຮູບແບບ. ຕົວເລືອກນີ້ໃຊ້ກັບຮູບແບບທີ່
ຖືກຈັບຄູ່ກັບເນື້ອໃນຂອງໄຟລ໌; ມັນບໍ່ໃຊ້ກັບຮູບແບບຕ່າງໆ
ກໍານົດໂດຍໃດໆຂອງ --ລວມ or --ຍົກເວັ້ນ ຕົວເລືອກ
-x, --line-regex, --line-regexp
ບັງຄັບໃຫ້ຮູບແບບທີ່ຈະສະມໍ (ແຕ່ລະຄົນຕ້ອງໄດ້ເລີ່ມຕົ້ນການຈັບຄູ່ໃນຕອນຕົ້ນຂອງ
a) ແລະນອກຈາກນັ້ນ, ຮຽກຮ້ອງໃຫ້ພວກເຂົາກົງກັບເສັ້ນທັງຫມົດ. ນີ້ແມ່ນທຽບເທົ່າ
ທີ່ຈະມີຕົວອັກສອນ ^ ແລະ $ ຢູ່ຈຸດເລີ່ມຕົ້ນ ແລະທ້າຍຂອງແຕ່ລະສາຂາທາງເລືອກໃນ
ທຸກຮູບແບບ. ຕົວເລືອກນີ້ໃຊ້ກັບຮູບແບບທີ່ກົງກັນເທົ່ານັ້ນ
ເນື້ອໃນຂອງໄຟລ໌; ມັນບໍ່ໄດ້ໃຊ້ກັບຮູບແບບທີ່ລະບຸໄວ້ໂດຍອັນໃດອັນໜຶ່ງ
--ລວມ or --ຍົກເວັ້ນ ຕົວເລືອກ
ENVIRONMENT ຄວາມຮັບຜິດຊອບ
ຕົວແປສະພາບແວດລ້ອມ LC_ALL ແລະ LC_CTYPE ໄດ້ຖືກກວດກາ, ໃນຄໍາສັ່ງນັ້ນ, ສໍາລັບທ້ອງຖິ່ນ.
ອັນທໍາອິດທີ່ຖືກກໍານົດແມ່ນຖືກນໍາໃຊ້. ນີ້ສາມາດໄດ້ຮັບການ overridden ໂດຍ --ທ້ອງຖິ່ນ ທາງເລືອກ. ຖ້າບໍ່ມີ
locale ຖືກກໍານົດ, ມາດຕະຖານຂອງຫ້ອງສະຫມຸດ PCRE (ປົກກະຕິແລ້ວ "C" locale) ຖືກນໍາໃຊ້.
ໃໝ່
ໄດ້ -N (-- ແຖວໃໝ່) ທາງເລືອກທີ່ອະນຸຍາດໃຫ້ pcregrep ເພື່ອສະແກນໄຟລ໌ທີ່ມີສົນທິສັນຍາແຖວໃຫມ່ທີ່ແຕກຕ່າງກັນ
ຈາກຄ່າເລີ່ມຕົ້ນ. ພາກສ່ວນໃດນຶ່ງຂອງໄຟລ໌ປ້ອນຂໍ້ມູນທີ່ຖືກຂຽນໃສ່ຜົນໄດ້ຮັບມາດຕະຖານແມ່ນ
ຄັດລອກແບບດຽວກັນ, ກັບລໍາດັບແຖວໃຫມ່ໃດກໍ່ຕາມພວກເຂົາມີຢູ່ໃນວັດສະດຸປ້ອນ. ຢ່າງໃດກໍຕາມ, ໄດ້
ການຕັ້ງຄ່າທາງເລືອກນີ້ບໍ່ມີຜົນກະທົບການຕີລາຄາຂອງໄຟລ໌ທີ່ລະບຸໄວ້ໂດຍ -f,
--ຍົກເວັ້ນ-ຈາກ, ຫຼື --include-ຈາກ ທາງເລືອກທີ່ສົມມຸດວ່າຈະນໍາໃຊ້ລະບົບປະຕິບັດການຂອງ
ລໍາດັບແຖວໃຫມ່ມາດຕະຖານ, ແລະບໍ່ມີຜົນກະທົບຕໍ່ວິທີການ pcregrep ຂຽນວ່າ
ຂໍ້ຄວາມໃຫ້ຂໍ້ມູນກ່ຽວກັບຄວາມຜິດພາດມາດຕະຖານແລະຜົນຜະລິດສະຕຣີມ. ສໍາລັບການເຫຼົ່ານີ້, ມັນໃຊ້
string "\n" ເພື່ອຊີ້ບອກແຖວໃໝ່, ໂດຍອາໄສຫ້ອງສະໝຸດ CI/O ເພື່ອປ່ຽນອັນນີ້ເປັນ
ລໍາດັບທີ່ເຫມາະສົມ.
OPTIONS ຄວາມເຂົ້າກັນໄດ້
ຫຼາຍຮູບແບບສັ້ນແລະຍາວຂອງ pcregrepທາງເລືອກຂອງແມ່ນຄືກັນກັບໃນ GNU grep
ໂຄງການ. ທາງເລືອກຍາວໃດໆຂອງຮູບແບບ --xxx-regexp (ຄໍາສັບ GNU) ຍັງມີຢູ່ໃນ
--xxx-regex (ຄໍາສັບ PCRE). ຢ່າງໃດກໍຕາມ, ໄດ້ --file-list, --file-offsets, --include-dir,
--line-offsets, --ທ້ອງຖິ່ນ, --ຂີດຈຳກັດການແຂ່ງຂັນ, -M, --multiline, -N, -- ແຖວໃໝ່, --om-ຕົວແຍກ,
--recursion-ຈຳກັດ, -u, ແລະ --utf-8 ທາງເລືອກແມ່ນສະເພາະ pcregrep, ເຊັ່ນດຽວກັນກັບການນໍາໃຊ້ຂອງ
--ການຈັບຄູ່ເທົ່ານັ້ນ ທາງເລືອກທີ່ມີຕົວເລກວົງເລັບຈັບ.
ເຖິງແມ່ນວ່າທາງເລືອກທົ່ວໄປສ່ວນໃຫຍ່ເຮັດວຽກແບບດຽວກັນ, ຈໍານວນຫນ້ອຍແມ່ນແຕກຕ່າງກັນໃນ pcregrep.
ຕົວຢ່າງເຊັ່ນ --ລວມ ການໂຕ້ຖຽງຂອງທາງເລືອກແມ່ນໂລກສໍາລັບ GNU grep, ແຕ່ເປັນປົກກະຕິ
ການສະແດງອອກສໍາລັບ pcregrep. ຖ້າທັງສອງ -c ແລະ -l ທາງເລືອກແມ່ນໄດ້ຮັບ, GNU grep ລາຍຊື່ພຽງແຕ່ໄຟລ໌
ຊື່, ໂດຍບໍ່ມີການນັບ, ແຕ່ pcregrep ເຮັດໃຫ້ການນັບ.
OPTIONS ກັບ ຂໍ້ມູນ
ມີສີ່ວິທີທີ່ແຕກຕ່າງກັນທີ່ທາງເລືອກທີ່ມີຂໍ້ມູນສາມາດຖືກກໍານົດ. ຖ້າສັ້ນ
ທາງເລືອກແບບຟອມຖືກນໍາໃຊ້, ຂໍ້ມູນອາດຈະປະຕິບັດຕາມທັນທີ, ຫຼື (ມີຂໍ້ຍົກເວັ້ນຫນຶ່ງ) ໃນຕໍ່ໄປ
ລາຍການແຖວຄໍາສັ່ງ. ຍົກຕົວຢ່າງ:
-f/some/file
-f /some/file
ຂໍ້ຍົກເວັ້ນແມ່ນ -o ທາງເລືອກ, ເຊິ່ງອາດຈະປາກົດມີຫຼືບໍ່ມີຂໍ້ມູນ. ເນື່ອງຈາກວ່ານີ້,
ຖ້າມີຂໍ້ມູນ, ມັນຕ້ອງປະຕິບັດຕາມທັນທີໃນລາຍການດຽວກັນ, ຕົວຢ່າງ -o3.
ຖ້າຕົວເລືອກແບບຟອມຍາວຖືກນໍາໃຊ້, ຂໍ້ມູນອາດຈະປາກົດຢູ່ໃນລາຍການຄໍາສັ່ງດຽວກັນ,
ແຍກອອກດ້ວຍຕົວອັກສອນເທົ່າກັບ, ຫຼື (ມີສອງຂໍ້ຍົກເວັ້ນ) ມັນອາດຈະປາກົດຢູ່ໃນຕໍ່ໄປ
ລາຍການແຖວຄໍາສັ່ງ. ຍົກຕົວຢ່າງ:
--file=/ບາງ/ໄຟລ໌
--file /some/file
ຢ່າງໃດກໍຕາມ, ໃຫ້ສັງເກດວ່າຖ້າທ່ານຕ້ອງການສະຫນອງຊື່ໄຟລ໌ທີ່ເລີ່ມຕົ້ນດ້ວຍ ~ ເປັນຂໍ້ມູນໃນແກະ
ຄໍາສັ່ງ, ແລະມີ shell ຂະຫຍາຍ ~ ກັບ home directory, ທ່ານຕ້ອງແຍກຊື່ໄຟລ໌
ຈາກທາງເລືອກ, ເນື່ອງຈາກວ່າແກະບໍ່ໄດ້ປິ່ນປົວ ~ ພິເສດເວັ້ນເສຍແຕ່ວ່າມັນແມ່ນຢູ່ໃນການເລີ່ມຕົ້ນຂອງ
ລາຍການ.
ຂໍ້ຍົກເວັ້ນຕໍ່ກັບຂ້າງເທິງນີ້ແມ່ນ --ສີ (ຫຼື --ສີ) ແລະ --ການຈັບຄູ່ເທົ່ານັ້ນ ທາງເລືອກ, ສໍາລັບ
ເຊິ່ງຂໍ້ມູນແມ່ນທາງເລືອກ. ຖ້າຫນຶ່ງໃນທາງເລືອກເຫຼົ່ານີ້ມີຂໍ້ມູນ, ມັນຕ້ອງໄດ້ຮັບການມອບໃຫ້
ຮູບແບບທໍາອິດ, ການນໍາໃຊ້ຕົວອັກສອນເທົ່າກັບ. ຖ້າບໍ່ດັ່ງນັ້ນ pcregrep ຈະສົມມຸດວ່າມັນບໍ່ມີ
ຂໍ້ມູນ.
ການສົນທະນາ ຄວາມຜິດພາດ
ມັນເປັນໄປໄດ້ທີ່ຈະສະຫນອງການສະແດງອອກເປັນປົກກະຕິທີ່ໃຊ້ເວລາຫຼາຍທີ່ຈະບໍ່ກົງກັນ
ສາຍທີ່ແນ່ນອນ. ຮູບແບບດັ່ງກ່າວປົກກະຕິມີການຊໍ້າຄືນທີ່ບໍ່ກຳນົດທີ່ຕັ້ງໄວ້, ຕົວຢ່າງ:
(a+)*\d ເມື່ອຖືກຈັບຄູ່ກັບແຖວຂອງ a ທີ່ບໍ່ມີຕົວເລກສຸດທ້າຍ. ຟັງຊັນການຈັບຄູ່ PCRE
ມີຂອບເຂດຈໍາກັດຂອງຊັບພະຍາກອນທີ່ເຮັດໃຫ້ມັນເອົາລູກອອກໃນສະຖານະການເຫຼົ່ານີ້. ຖ້າສິ່ງນີ້ເກີດຂຶ້ນ,
pcregrep outputs ຂໍ້ຄວາມຜິດພາດແລະເສັ້ນທີ່ເຮັດໃຫ້ເກີດບັນຫາກັບມາດຕະຖານ
ການຖ່າຍທອດຄວາມຜິດພາດ. ຖ້າມີຫຼາຍກວ່າ 20 ຂໍ້ຜິດພາດດັ່ງກ່າວ, pcregrep ໃຫ້ເຖິງ.
ໄດ້ --ຂີດຈຳກັດການແຂ່ງຂັນ ທາງເລືອກຂອງ pcregrep ສາມາດຖືກນໍາໃຊ້ເພື່ອກໍານົດຂອບເຂດຈໍາກັດຊັບພະຍາກອນໂດຍລວມ; ຢູ່ທີ່ນັ້ນ
ເປັນທາງເລືອກທີສອງເອີ້ນວ່າ --recursion-ຈຳກັດ ທີ່ກໍານົດຂອບເຂດຈໍາກັດກ່ຽວກັບຈໍານວນຫນ່ວຍຄວາມຈໍາ
(ປົກກະຕິແລ້ວ stack) ທີ່ຖືກນໍາໃຊ້ (ເບິ່ງການສົນທະນາຂອງທາງເລືອກເຫຼົ່ານີ້ຂ້າງເທິງ).
ທິດສະດີວິທະຍາ
ອອກຈາກສະຖານະແມ່ນ 0 ຖ້າພົບການຈັບຄູ່, 1 ຖ້າບໍ່ພົບການຈັບຄູ່, ແລະ 2 ສໍາລັບ syntax.
ຄວາມຜິດພາດ, overlong ເສັ້ນ, ບໍ່ມີຢູ່ຫຼືບໍ່ສາມາດເຂົ້າເຖິງໄຟລ໌ (ເຖິງແມ່ນວ່າການແຂ່ງຂັນໄດ້ພົບເຫັນຢູ່ໃນ
ໄຟລ໌ອື່ນໆ) ຫຼືຄວາມຜິດພາດທີ່ກົງກັນຫຼາຍເກີນໄປ. ການນໍາໃຊ້ -s ທາງເລືອກເພື່ອສະກັດກັ້ນຂໍ້ຄວາມຜິດພາດ
ກ່ຽວກັບໄຟລ໌ທີ່ບໍ່ສາມາດເຂົ້າເຖິງໄດ້ບໍ່ມີຜົນກະທົບຕໍ່ລະຫັດກັບຄືນ.
ໃຊ້ zpcregrep ອອນໄລນ໌ໂດຍໃຊ້ບໍລິການ onworks.net