ນີ້ແມ່ນຄໍາສັ່ງ egrep ທີ່ສາມາດດໍາເນີນການໄດ້ໃນ OnWorks ຜູ້ໃຫ້ບໍລິການໂຮດຕິ້ງຟຣີໂດຍໃຊ້ຫນຶ່ງໃນຫຼາຍສະຖານີເຮັດວຽກອອນໄລນ໌ຂອງພວກເຮົາເຊັ່ນ Ubuntu Online, Fedora Online, Windows online emulator ຫຼື MAC OS online emulator
ໂຄງການ:
NAME
grep, egrep, fgrep, rgrep - ເສັ້ນພິມທີ່ກົງກັບຮູບແບບ
ສະຫຼຸບສັງລວມ
grep [OPTIONS] PATTERN [ເອກະສານ... ]
grep [OPTIONS] [-e PATTERN]... [-f ເອກະສານ]... [ເອກະສານ... ]
ລາຍລະອຽດ
grep ຊອກຫາການປ້ອນຂໍ້ມູນທີ່ມີຊື່ ເອກະສານs ສໍາລັບເສັ້ນທີ່ມີຄໍາທີ່ກົງກັນກັບທີ່ໃຫ້ PATTERNທີ່ຢູ່ ຖ້າຫາກວ່າ
ບໍ່ມີໄຟລ໌ໃດຖືກລະບຸ, ຫຼືຖ້າໄຟລ໌ "-"ແມ່ນໃຫ້, grep ຄົ້ນຫາວັດສະດຸປ້ອນມາດຕະຖານ. ໂດຍ
ຄ່າເລີ່ມຕົ້ນ, grep ພິມເສັ້ນທີ່ກົງກັນ.
ນອກຈາກນັ້ນ, ໂຄງການ variant ຕົວຢ່າງ, fgrep ແລະ rgrep ແມ່ນຄືກັນກັບ grep -E, grep -F,
ແລະ grep -r, ຕາມລໍາດັບ. ຕົວແປເຫຼົ່ານີ້ຖືກປະຕິເສດແລ້ວ, ແຕ່ຖືກສະໜອງໃຫ້ສຳລັບຍ້ອນຫຼັງ
ຄວາມເຂົ້າກັນໄດ້.
OPTIONS
generic ໂຄງການ ຂໍ້ມູນຂ່າວສານ
- ຊ່ວຍ ສົ່ງຂໍ້ຄວາມການນໍາໃຊ້ແລະອອກ.
-V, - ການປ່ຽນແປງ
ຜົນຜະລິດຈໍານວນສະບັບຂອງ grep ແລະອອກຈາກການ.
ຈັບຄູ່ ການຄັດເລືອກ
-E, --extended-regexp
ນາຍແປພາສາ PATTERN ເປັນການສະແດງອອກປົກກະຕິ (ERE, ເບິ່ງຂ້າງລຸ່ມນີ້).
-F, --fixed-strings
ນາຍແປພາສາ PATTERN ເປັນບັນຊີລາຍຊື່ຂອງສະຕິງຄົງທີ່ (ແທນທີ່ຈະເປັນການສະແດງອອກປົກກະຕິ),
ແຍກອອກດ້ວຍສາຍໃໝ່, ອັນໃດອັນໜຶ່ງທີ່ຈະຖືກຈັບຄູ່.
-G, --basic-regexp
ນາຍແປພາສາ PATTERN ເປັນການສະແດງອອກປົກກະຕິພື້ນຖານ (BRE, ເບິ່ງຂ້າງລຸ່ມນີ້). ນີ້ແມ່ນ
Default
-P, --perl-regexp
ນາຍແປພາສາ PATTERN ເປັນການສະແດງອອກປົກກະຕິ Perl (PCRE, ເບິ່ງຂ້າງລຸ່ມນີ້). ນີ້ແມ່ນສູງ
ທົດລອງແລະ grep -P ອາດຈະເຕືອນກ່ຽວກັບລັກສະນະທີ່ບໍ່ໄດ້ປະຕິບັດ.
ການຈັບຄູ່ ການຄວບຄຸມ
-e PATTERN, --regexp=PATTERN
ການນໍາໃຊ້ PATTERN ເປັນຮູບແບບ. ຫຼາຍ -e ສາມາດຖືກນໍາໃຊ້ເພື່ອກໍານົດການຊອກຫາທີ່ແຕກຕ່າງກັນ
ຮູບແບບ. ຕົວເລືອກນີ້ຍັງເປັນປະໂຫຍດເພື່ອປົກປ້ອງຮູບແບບທີ່ເລີ່ມຕົ້ນດ້ວຍຂີດໝາຍ
(-).
-f ເອກະສານ, --file=ເອກະສານ
ໄດ້ຮັບຮູບແບບຈາກ ເອກະສານ, ຫນຶ່ງຕໍ່ແຖວ. ໄຟລ໌ຫວ່າງເປົ່າມີສູນຮູບແບບ,
ແລະດັ່ງນັ້ນຈຶ່ງບໍ່ກົງກັນ. ຫຼາຍ -f ສາມາດໃຊ້ເພື່ອລະບຸໄຟລ໌ທີ່ແຕກຕ່າງກັນ.
-i, -- ignore-case
ບໍ່ສົນໃຈຄວາມແຕກຕ່າງຂອງກໍລະນີໃນທັງສອງ PATTERN ແລະໄຟລ໌ປ້ອນຂໍ້ມູນ.
-v, --invert-match
ປ່ຽນຄວາມຮູ້ສຶກຂອງການຈັບຄູ່, ເພື່ອຄັດເລືອກເອົາເສັ້ນທີ່ບໍ່ກົງກັນ.
-w, --word-regexp
ເລືອກພຽງແຕ່ເສັ້ນທີ່ມີຄໍາທີ່ກົງກັນທີ່ປະກອບເປັນຄໍາທັງຫມົດ. ການທົດສອບແມ່ນວ່າ
ຂໍ້ຄວາມຍ່ອຍທີ່ກົງກັນຈະຕ້ອງຢູ່ຈຸດເລີ່ມຕົ້ນຂອງແຖວ, ຫຼືນຳໜ້າດ້ວຍ
ລັກສະນະອົງປະກອບທີ່ບໍ່ແມ່ນຄໍາສັບ. ເຊັ່ນດຽວກັນ, ມັນຈະຕ້ອງຢູ່ໃນຕອນທ້າຍຂອງ
ແຖວ ຫຼື ຕິດຕາມດ້ວຍຕົວປະກອບທີ່ບໍ່ແມ່ນຄຳສັບ. ຕົວອັກສອນທີ່ເປັນອົງປະກອບຂອງຄໍາ
ແມ່ນຕົວອັກສອນ, ຕົວເລກ, ແລະຂີດກ້ອງ.
-x, --line-regexp
ເລືອກສະເພາະລາຍການທີ່ກົງກັບເສັ້ນທັງໝົດ. ສໍາລັບປົກກະຕິ
ຮູບແບບການສະແດງອອກ, ນີ້ແມ່ນຄ້າຍຄືກັບວົງເລັບຮູບແບບແລະຫຼັງຈາກນັ້ນອ້ອມຂ້າງມັນ
ກັບ ^ ແລະ $.
-y ຄຳສັບຄ້າຍຄືກັນສຳລັບ -i.
ໂດຍທົ່ວໄປ ຜົນຜະລິດ ການຄວບຄຸມ
-c, --ນັບ
ສະກັດກັ້ນຜົນຜະລິດປົກກະຕິ; ແທນທີ່ຈະພິມຈໍານວນເສັ້ນທີ່ກົງກັນສໍາລັບແຕ່ລະວັດສະດຸປ້ອນ
ໄຟລ໌. ກັບ -v, --invert-match ທາງເລືອກ (ເບິ່ງຂ້າງລຸ່ມນີ້), ນັບເສັ້ນທີ່ບໍ່ກົງກັນ.
--ສີ[=ເມື່ອໃດ], --ສີ[=ເມື່ອໃດ]
ອ້ອມຮອບສະຕຣິງທີ່ກົງກັນ (ບໍ່ຫວ່າງ), ເສັ້ນທີ່ກົງກັນ, ເສັ້ນບໍລິບົດ, ໄຟລ໌
ຊື່, ຕົວເລກແຖວ, ການຊົດເຊີຍ byte, ແລະຕົວແຍກ (ສໍາລັບຊ່ອງຂໍ້ມູນ ແລະກຸ່ມຂອງບໍລິບົດ
ເສັ້ນ) ທີ່ມີລໍາດັບການຫລົບຫນີເພື່ອສະແດງພວກມັນເປັນສີໃນ terminal. ສີ
ຖືກກໍານົດໂດຍຕົວແປສະພາບແວດລ້ອມ GREP_COLORS. ສະພາບແວດລ້ອມທີ່ຖືກປະຕິເສດ
ຕົວແປ GREP_COLOR ຍັງໄດ້ຮັບການສະຫນັບສະຫນູນ, ແຕ່ການຕັ້ງຄ່າຂອງມັນບໍ່ມີບູລິມະສິດ.
ເມື່ອໃດ is ບໍ່ເຄີຍ, ສະເຫມີໄປ, ຫຼື ອັດຕະໂນມັດ.
-L, --files-without-match
ສະກັດກັ້ນຜົນຜະລິດປົກກະຕິ; ແທນທີ່ ຈະພິມຊື່ຂອງແຕ່ລະໄຟລ໌ທີ່ປ້ອນເຂົ້າຈາກອັນໃດ
ປົກກະຕິຜົນຜະລິດຈະຖືກພິມອອກ. ການສະແກນຈະຢຸດຢູ່ໃນຄັ້ງທໍາອິດ
ການແຂ່ງຂັນ.
-l, --files-with-match
ສະກັດກັ້ນຜົນຜະລິດປົກກະຕິ; ແທນທີ່ຈະພິມຊື່ຂອງແຕ່ລະໄຟລ໌ປ້ອນຂໍ້ມູນຈາກຜົນໄດ້ຮັບ
ປົກກະຕິຈະຖືກພິມອອກ. ການສະແກນຈະຢຸດຢູ່ໃນການແຂ່ງຂັນຄັ້ງທໍາອິດ.
-m NUMBER, --max-count=NUMBER
ຢຸດການອ່ານໄຟລ໌ຫຼັງຈາກ NUMBER ສາຍທີ່ກົງກັນ. ຖ້າຫາກວ່າການປ້ອນຂໍ້ມູນແມ່ນມາດຕະຖານການປ້ອນຂໍ້ມູນຈາກ
ໄຟລ໌ປົກກະຕິ, ແລະ NUMBER ສາຍທີ່ກົງກັນແມ່ນຜົນຜະລິດ, grep ຮັບປະກັນວ່າມາດຕະຖານ
ການປ້ອນຂໍ້ມູນຖືກຈັດຕຳແໜ່ງເປັນພຽງແຕ່ຫຼັງຈາກແຖວທີ່ກົງກັນສຸດທ້າຍກ່ອນທີ່ຈະອອກ, ໂດຍບໍ່ສົນເລື່ອງ
ຂອງການປະກົດຕົວຂອງແຖວບໍລິບົດຕໍ່ທ້າຍ. ນີ້ເຮັດໃຫ້ຂະບວນການໂທຫາ
ສືບຕໍ່ການຄົ້ນຫາ. ເມື່ອໃດ grep ຢຸດຫຼັງຈາກ NUMBER ເສັ້ນທີ່ກົງກັນ, ມັນສົ່ງຜົນຕໍ່ທ້າຍໃດໆ
ເສັ້ນບໍລິບົດ. ໃນເວລາທີ່ -c or --ນັບ ທາງເລືອກຍັງຖືກນໍາໃຊ້, grep ບໍ່ອອກ a
ນັບຫຼາຍກ່ວາ NUMBER. ໃນເວລາທີ່ -v or --invert-match ທາງເລືອກຍັງຖືກນໍາໃຊ້, grep
ຢຸດຫຼັງຈາກຜົນຜະລິດ NUMBER ສາຍທີ່ບໍ່ກົງກັນ.
-o, --ການຈັບຄູ່ເທົ່ານັ້ນ
ພິມສະເພາະສ່ວນທີ່ຈັບຄູ່ກັນ (ບໍ່ຫວ່າງເປົ່າ) ຂອງເສັ້ນທີ່ກົງກັນ, ໂດຍແຕ່ລະພາກສ່ວນນັ້ນເປີດຢູ່
ເສັ້ນຜົນຜະລິດແຍກຕ່າງຫາກ.
-q, --ງຽບ, --ງຽບ
ງຽບ; ບໍ່ໄດ້ຂຽນຫຍັງກັບຜົນຜະລິດມາດຕະຖານ. ອອກທັນທີດ້ວຍສະຖານະສູນ
ຖ້າພົບການຈັບຄູ່, ເຖິງແມ່ນວ່າຈະກວດພົບຂໍ້ຜິດພາດ. ຍັງເບິ່ງໄດ້ -s or
-- ບໍ່ມີຂໍ້ຄວາມ ທາງເລືອກ.
-s, -- ບໍ່ມີຂໍ້ຄວາມ
ສະກັດກັ້ນຂໍ້ຄວາມສະແດງຂໍ້ຜິດພາດກ່ຽວກັບໄຟລ໌ທີ່ບໍ່ມີຢູ່ ຫຼືບໍ່ສາມາດອ່ານໄດ້.
ຜົນຜະລິດ ອອນໄລນ໌ Prefix ການຄວບຄຸມ
-b, --byte-offset
ພິມ 0-based byte offset ພາຍໃນໄຟລ໌ input ກ່ອນແຕ່ລະແຖວຂອງຜົນຜະລິດ. ຖ້າ
-o (--ການຈັບຄູ່ເທົ່ານັ້ນ) ຖືກລະບຸໄວ້, ພິມການຊົດເຊີຍຂອງສ່ວນທີ່ກົງກັນເອງ.
-H, --with-filename
ພິມຊື່ໄຟລ໌ສໍາລັບແຕ່ລະການແຂ່ງຂັນ. ນີ້ແມ່ນຄ່າເລີ່ມຕົ້ນເມື່ອມີຫຼາຍກ່ວາ
ໄຟລ໌ຫນຶ່ງເພື່ອຄົ້ນຫາ.
-h, --no-filename
ຍັບຍັ້ງການນໍາຫນ້າຂອງຊື່ໄຟລ໌ໃນຜົນຜະລິດ. ນີ້ແມ່ນຄ່າເລີ່ມຕົ້ນເມື່ອມີ
ພຽງແຕ່ຫນຶ່ງໄຟລ໌ (ຫຼືພຽງແຕ່ມາດຕະຖານ input) ເພື່ອຊອກຫາ.
--label=LABEL
ສະແດງການປ້ອນຂໍ້ມູນຕົວຈິງມາຈາກວັດສະດຸປ້ອນມາດຕະຖານເປັນວັດສະດຸປ້ອນມາຈາກໄຟລ໌ LABEL.
ນີ້ແມ່ນເປັນປະໂຫຍດໂດຍສະເພາະໃນເວລາທີ່ປະຕິບັດເຄື່ອງມືເຊັ່ນ: zgrep, ຕົວຢ່າງ, gzip -cd foo.gz
| grep --label=foo -H ບາງສິ່ງບາງຢ່າງ. ເບິ່ງຍັງ -H ທາງເລືອກ.
-n, --ເລກແຖວ
ນຳໜ້າແຕ່ລະແຖວຂອງຜົນຜະລິດດ້ວຍຕົວເລກ 1-based ພາຍໃນໄຟລ໌ປ້ອນຂໍ້ມູນຂອງມັນ.
-T, --initial-tab
ໃຫ້ແນ່ໃຈວ່າລັກສະນະທໍາອິດຂອງເນື້ອຫາເສັ້ນຕົວຈິງແມ່ນຢູ່ໃນແຖບຢຸດ, ດັ່ງນັ້ນ
ວ່າການຈັດຕໍາແຫນ່ງຂອງແຖບເບິ່ງຄືວ່າປົກກະຕິ. ນີ້ແມ່ນເປັນປະໂຫຍດກັບທາງເລືອກທີ່ຄໍານໍາຫນ້າ
ຜົນຜະລິດຂອງເຂົາເຈົ້າກັບເນື້ອໃນຕົວຈິງ: -H,-n, ແລະ -b. ໃນຄໍາສັ່ງທີ່ຈະປັບປຸງ
ຄວາມເປັນໄປໄດ້ທີ່ເສັ້ນຈາກໄຟລ໌ດຽວທັງຫມົດຈະເລີ່ມຕົ້ນຢູ່ໃນຖັນດຽວກັນ, ນີ້
ຍັງເຮັດໃຫ້ຈໍານວນເສັ້ນແລະ byte ຊົດເຊີຍ (ຖ້າມີ) ພິມຢູ່ໃນຕໍາ່ສຸດທີ່
ຂະຫນາດຄວາມກວ້າງຂອງຊ່ອງຂໍ້ມູນ.
-u, --unix-byte-offsets
ລາຍງານການຊົດເຊີຍ byte ແບບ Unix. ສະຫຼັບນີ້ເຮັດໃຫ້ເກີດ grep ເພື່ອລາຍງານການຊົດເຊີຍ byte ເປັນ
ຖ້າໄຟລ໌ນັ້ນເປັນໄຟລ໌ຂໍ້ຄວາມແບບ Unix, ເຊັ່ນວ່າ ມີການຖອດຕົວອັກສອນ CR ອອກ.
ນີ້ຈະສ້າງຜົນໄດ້ຮັບຄືກັນກັບການແລ່ນ grep ໃນເຄື່ອງ Unix. ທາງເລືອກນີ້
ບໍ່ມີຜົນກະທົບເວັ້ນເສຍແຕ່ -b ທາງເລືອກຍັງຖືກນໍາໃຊ້; ມັນບໍ່ມີຜົນຕໍ່ເວທີອື່ນໆ
ຫຼາຍກວ່າ MS-DOS ແລະ MS-Windows.
-Z, -- null
ສົ່ງອອກເປັນສູນໄບຕ໌ (ASCII null character) ແທນທີ່ຈະເປັນລັກສະນະປົກກະຕິ
ປະຕິບັດຕາມຊື່ໄຟລ໌. ຍົກຕົວຢ່າງ, grep -lZ ໃຫ້ຜົນເປັນສູນໄບຕ໌ຫຼັງຈາກແຕ່ລະໄຟລ໌
ຊື່ແທນສາຍໃໝ່ປົກກະຕິ. ທາງເລືອກນີ້ເຮັດໃຫ້ຜົນຜະລິດບໍ່ຊັດເຈນ, ເຖິງແມ່ນວ່າ
ໃນທີ່ປະທັບຂອງຊື່ໄຟລ໌ທີ່ມີລັກສະນະຜິດປົກກະຕິເຊັ່ນ: newlines. ນີ້
ທາງເລືອກສາມາດນໍາໃຊ້ກັບຄໍາສັ່ງເຊັ່ນ: ຊອກຫາ -ພິມ0, perl -0, ການຈັດລຽງ -z, ແລະ xargs -0
ເພື່ອປະມວນຜົນຊື່ໄຟລ໌ທີ່ຕົນເອງມັກ, ເຖິງແມ່ນວ່າມີຕົວອັກສອນແຖວໃໝ່.
Context ອອນໄລນ໌ ການຄວບຄຸມ
-A NUMBER, --after-context=NUMBER
ພິມ NUMBER ແຖວຂອງບໍລິບົດຕໍ່ທ້າຍຫຼັງຈາກເສັ້ນທີ່ກົງກັນ. ວາງແຖວທີ່ມີ
ຕົວແຍກກຸ່ມ (--) ລະຫວ່າງກຸ່ມທີ່ຕິດກັນຂອງການແຂ່ງຂັນ. ກັບ -o or
--ການຈັບຄູ່ເທົ່ານັ້ນ ທາງເລືອກ, ນີ້ບໍ່ມີຜົນກະທົບແລະຄໍາເຕືອນແມ່ນໄດ້ຮັບ.
-B NUMBER, --before-context=NUMBER
ພິມ NUMBER ເສັ້ນຂອງບໍລິບົດນໍາຫນ້າກ່ອນທີ່ຈະຈັບຄູ່ເສັ້ນ. ວາງແຖວທີ່ມີ
ຕົວແຍກກຸ່ມ (--) ລະຫວ່າງກຸ່ມທີ່ຕິດກັນຂອງການແຂ່ງຂັນ. ກັບ -o or
--ການຈັບຄູ່ເທົ່ານັ້ນ ທາງເລືອກ, ນີ້ບໍ່ມີຜົນກະທົບແລະຄໍາເຕືອນແມ່ນໄດ້ຮັບ.
-C NUMBER, -NUMBER, --context=NUMBER
ພິມ NUMBER ເສັ້ນຂອງສະພາບການຜົນຜະລິດ. ວາງແຖວທີ່ມີຕົວຂັ້ນກຸ່ມ (--)
ລະຫວ່າງກຸ່ມທີ່ຕິດຕໍ່ກັນຂອງການແຂ່ງຂັນ. ກັບ -o or --ການຈັບຄູ່ເທົ່ານັ້ນ ທາງເລືອກ, ນີ້
ບໍ່ມີຜົນກະທົບແລະໄດ້ຮັບການເຕືອນໄພ.
ເອກະສານ ແລະ Directory ການຄັດເລືອກ
-a, --ຂໍ້ຄວາມ
ປະມວນຜົນໄຟລ໌ຖານສອງຄືກັບວ່າມັນເປັນຂໍ້ຄວາມ; ນີ້ແມ່ນເທົ່າກັບ
--binary-files=ຂໍ້ຄວາມ ທາງເລືອກ.
--binary-files=TYPE
ຖ້າສອງສາມໄບທໍາອິດຂອງໄຟລ໌ຊີ້ໃຫ້ເຫັນວ່າໄຟລ໌ມີຂໍ້ມູນຖານສອງ,
ສົມມຸດວ່າໄຟລ໌ແມ່ນປະເພດ TYPE. ໂດຍຄ່າເລີ່ມຕົ້ນ, TYPE is binary, ແລະ grep
ໂດຍປົກກະຕິຈະອອກຂໍ້ຄວາມໜຶ່ງແຖວທີ່ບອກວ່າໄຟລ໌ຄູ່ຄູ່ກົງກັນ, ຫຼືບໍ່ມີ
ຂໍ້ຄວາມຖ້າຫາກວ່າບໍ່ມີການແຂ່ງຂັນ. ຖ້າ TYPE is ໂດຍບໍ່ມີການແຂ່ງຂັນ, grep ສົມມຸດວ່າຖານສອງ
ໄຟລ໌ບໍ່ກົງກັນ; ນີ້ແມ່ນເທົ່າກັບ -I ທາງເລືອກ. ຖ້າ TYPE is ຂໍ້ຄວາມ, grep
ປະມວນຜົນໄຟລ໌ຖານສອງຄືກັບວ່າມັນເປັນຂໍ້ຄວາມ; ນີ້ແມ່ນເທົ່າກັບ -a ທາງເລືອກ.
ເມື່ອປະມວນຜົນຂໍ້ມູນຖານສອງ, grep ອາດປະຕິບັດຕໍ່ໄບຕ໌ທີ່ບໍ່ແມ່ນຂໍ້ຄວາມເປັນຕົວສິ້ນສຸດເສັ້ນ; ສໍາລັບ
ຕົວຢ່າງ, ຮູບແບບ '.' (ໄລຍະເວລາ) ອາດຈະບໍ່ກົງກັບ byte null, ເປັນ byte null
ອາດຈະຖືກປະຕິບັດເປັນຕົວສິ້ນສຸດຂອງເສັ້ນ. ຄໍາເຕືອນ: grep --binary-files=ຂໍ້ຄວາມ ອາດຈະ
output ຂີ້ເຫຍື້ອສອງ, ຊຶ່ງສາມາດມີຜົນຂ້າງຄຽງ nasty ຖ້າຫາກວ່າຜົນຜະລິດແມ່ນເປັນ
terminal ແລະຖ້າ terminal driver ຕີຄວາມຫມາຍບາງສ່ວນຂອງມັນເປັນຄໍາສັ່ງ.
-D ACTION, --ອຸປະກອນ=ACTION
ຖ້າໄຟລ໌ປ້ອນຂໍ້ມູນເປັນອຸປະກອນ, FIFO ຫຼື socket, ໃຫ້ໃຊ້ ACTION ເພື່ອປຸງແຕ່ງມັນ. ໂດຍ
ຄ່າເລີ່ມຕົ້ນ, ACTION is ອ່ານ, ຊຶ່ງຫມາຍຄວາມວ່າອຸປະກອນຖືກອ່ານຄືກັບວ່າພວກເຂົາເປັນ
ໄຟລ໌ທໍາມະດາ. ຖ້າ ACTION is ຂ້າມ, ອຸປະກອນຖືກຂ້າມຢ່າງງຽບໆ.
-d ACTION, --directories=ACTION
ຖ້າໄຟລ໌ປ້ອນເຂົ້າເປັນໄດເລກະທໍລີ, ໃຫ້ໃຊ້ ACTION ເພື່ອປຸງແຕ່ງມັນ. ໂດຍຄ່າເລີ່ມຕົ້ນ, ACTION is
ອ່ານie, ອ່ານໄດເລກະທໍລີຄືກັບວ່າມັນເປັນໄຟລ໌ທໍາມະດາ. ຖ້າ ACTION is
ຂ້າມ, ງຽບໆຂ້າມໄດເລກະທໍລີ. ຖ້າ ACTION is ພະຍາບານ, ອ່ານໄຟລ໌ທັງຫມົດພາຍໃຕ້ແຕ່ລະ
directory, recursively, ປະຕິບັດຕາມການເຊື່ອມຕໍ່ສັນຍາລັກພຽງແຕ່ຖ້າພວກເຂົາຢູ່ໃນຄໍາສັ່ງ
ສາຍ. ນີ້ແມ່ນເທົ່າກັບ -r ທາງເລືອກ.
--ຍົກເວັ້ນ=GLOB
ຂ້າມໄຟລ໌ທີ່ມີຊື່ພື້ນຖານກົງກັນ GLOB (ການນໍາໃຊ້ການຈັບຄູ່ຕົວແທນ). ຊື່ໄຟລ໌
glob ສາມາດນໍາໃຊ້ *, ?, ແລະ [...] ເປັນ wildcards, ແລະ \ ເພື່ອອ້າງເຖິງສັນຍາລັກແທນ ຫຼື backslash
ຕົວອັກສອນ.
--exclude-from=ເອກະສານ
ຂ້າມໄຟລ໌ທີ່ມີຊື່ພື້ນຖານກົງກັບທຸກຊື່ໄຟລ໌ globs ທີ່ອ່ານຈາກ ເອກະສານ (ການນໍາໃຊ້
ການຈັບຄູ່ຕົວແທນທີ່ອະທິບາຍໄວ້ພາຍໃຕ້ --ຍົກເວັ້ນ).
--exclude-dir=DIR
ບໍ່ລວມລາຍການທີ່ກົງກັບຮູບແບບ DIR ຈາກການຄົ້ນຫາ recursive.
-I ປະມວນຜົນໄຟລ໌ຖານສອງຄືກັບວ່າມັນບໍ່ມີຂໍ້ມູນທີ່ກົງກັນ; ນີ້ແມ່ນເທົ່າກັບ
ໄດ້ --binary-files=ບໍ່ກົງກັນ ທາງເລືອກ.
--include=GLOB
ຄົ້ນຫາພຽງແຕ່ໄຟລ໌ທີ່ມີຊື່ພື້ນຖານກົງກັນ GLOB (ການນໍາໃຊ້ຕົວແທນທີ່ກົງກັນກັບ
ອະທິບາຍພາຍໃຕ້ --ຍົກເວັ້ນ).
-r, - ການຮວບຮວມ
ອ່ານໄຟລ໌ທັງຫມົດພາຍໃຕ້ແຕ່ລະໄດເລກະທໍລີ, recursively, ປະຕິບັດຕາມການເຊື່ອມຕໍ່ສັນຍາລັກພຽງແຕ່ຖ້າຫາກວ່າ
ພວກເຂົາຢູ່ໃນເສັ້ນຄໍາສັ່ງ. ໃຫ້ສັງເກດວ່າຖ້າບໍ່ມີໄຟລ໌ operand ຖືກມອບໃຫ້, ການຊອກຫາ grep
ໄດເລກະທໍລີທີ່ເຮັດວຽກ. ນີ້ແມ່ນເທົ່າກັບ -d ພະຍາບານ ທາງເລືອກ.
-R, --dereference-recursive
ອ່ານໄຟລ໌ທັງໝົດພາຍໃຕ້ແຕ່ລະໄດເລກະທໍລີ, recursively. ປະຕິບັດຕາມການເຊື່ອມຕໍ່ສັນຍາລັກທັງຫມົດ,
ບໍ່ມັກ -r.
ອື່ນ ໆ ທາງເລືອກໃນການ
--line-buffed
ໃຊ້ line buffering ໃນຜົນຜະລິດ. ນີ້ສາມາດເຮັດໃຫ້ເກີດການລົງໂທດການປະຕິບັດ.
-U, --binary
ຮັກສາໄຟລ໌ເປັນຖານສອງ. ໂດຍຄ່າເລີ່ມຕົ້ນ, ພາຍໃຕ້ MS-DOS ແລະ MS-Windows, grep ຄາດເດົາ
ປະເພດໄຟລ໌ໂດຍການເບິ່ງເນື້ອໃນຂອງ 32KB ທໍາອິດທີ່ອ່ານຈາກໄຟລ໌. ຖ້າ
grep ຕັດສິນໃຈໄຟລ໌ເປັນໄຟລ໌ຂໍ້ຄວາມ, ມັນລອກເອົາຕົວອັກສອນ CR ຈາກຕົ້ນສະບັບ
ເນື້ອໃນໄຟລ໌ (ເພື່ອເຮັດໃຫ້ການສະແດງອອກເປັນປົກກະຕິກັບ ^ ແລະ $ ເຮັດວຽກຢ່າງຖືກຕ້ອງ).
ການລະບຸ -U overrules ການຄາດເດົານີ້, ເຮັດໃຫ້ໄຟລ໌ທັງຫມົດຖືກອ່ານແລະສົ່ງຕໍ່
ກົນໄກການຈັບຄູ່ verbatim; ຖ້າໄຟລ໌ເປັນໄຟລ໌ຂໍ້ຄວາມທີ່ມີຄູ່ CR/LF ຢູ່
ໃນຕອນທ້າຍຂອງແຕ່ລະແຖວ, ນີ້ຈະເຮັດໃຫ້ເກີດການສະແດງອອກປົກກະຕິບາງຢ່າງລົ້ມເຫລວ. ທາງເລືອກນີ້
ບໍ່ມີຜົນຕໍ່ກັບເວທີອື່ນນອກຈາກ MS-DOS ແລະ MS-Windows.
-z, --null-data
ປະຕິບັດການປ້ອນຂໍ້ມູນເປັນຊຸດຂອງແຖວ, ແຕ່ລະອັນຖືກຢຸດດ້ວຍສູນໄບຕ໌ (ASCII null
ລັກສະນະ) ແທນທີ່ຈະເປັນເສັ້ນໃຫມ່. ເຊັ່ນດຽວກັນກັບ -Z or -- null ທາງເລືອກ, ທາງເລືອກນີ້ສາມາດເປັນ
ໃຊ້ກັບຄໍາສັ່ງເຊັ່ນ ການຈັດລຽງ -z ເພື່ອປະມວນຜົນຊື່ໄຟລ໌ທີ່ມັກ.
REGULAR ການສະແດງອອກ
ການສະແດງຜົນປົກກະຕິແມ່ນຮູບແບບທີ່ອະທິບາຍຊຸດຂອງສະຕຣິງ. ການສະແດງອອກເປັນປົກກະຕິ
ຖືກສ້າງຂື້ນແບບປຽບທຽບກັບການສະແດງອອກເລກເລກ, ໂດຍໃຊ້ຕົວປະຕິບັດການຕ່າງໆ
ສົມທົບການສະແດງອອກຂະຫນາດນ້ອຍກວ່າ.
grep ເຂົ້າໃຈສາມສະບັບທີ່ແຕກຕ່າງກັນຂອງ syntax ການສະແດງອອກປົກກະຕິ: "ພື້ນຖານ" (BRE),
"ຂະຫຍາຍ" (ERE) ແລະ "perl" (PCRE). ໃນ GNU grep, ບໍ່ມີຄວາມແຕກຕ່າງໃນທີ່ມີຢູ່
ການທໍາງານລະຫວ່າງ syntax ພື້ນຖານແລະຂະຫຍາຍ. ໃນການປະຕິບັດອື່ນໆ, ພື້ນຖານ
ການສະແດງອອກປົກກະຕິແມ່ນມີອໍານາດຫນ້ອຍ. ຄໍາອະທິບາຍຕໍ່ໄປນີ້ໃຊ້ກັບການຂະຫຍາຍ
ການສະແດງອອກເປັນປົກກະຕິ; ຄວາມແຕກຕ່າງສໍາລັບການສະແດງອອກປົກກະຕິພື້ນຖານແມ່ນສະຫຼຸບຫຼັງຈາກນັ້ນ.
Perl ການສະແດງອອກປົກກະຕິໃຫ້ຫນ້າທີ່ເພີ່ມເຕີມ, ແລະຖືກບັນທຶກໄວ້ໃນ
pcresyntax(3) ແລະ ລວດລາຍ(3), ແຕ່ເຮັດວຽກພຽງແຕ່ຖ້າ PCRE ມີຢູ່ໃນລະບົບ.
ໂຄງສ້າງພື້ນຖານແມ່ນການສະແດງອອກປົກກະຕິທີ່ກົງກັບລັກສະນະດຽວ.
ຕົວອັກສອນສ່ວນໃຫຍ່, ລວມທັງຕົວອັກສອນແລະຕົວເລກທັງຫມົດ, ແມ່ນການສະແດງອອກປົກກະຕິທີ່ກົງກັນ
ຕົນເອງ. ຕົວອັກສອນ meta ທີ່ມີຄວາມຫມາຍພິເສດອາດຈະຖືກອ້າງເຖິງໂດຍການນໍາຫນ້າດ້ວຍ a
backslash.
ໄລຍະເວລາ . ກົງກັບຕົວອັກສອນດຽວ.
ລັກສະນະ ຫ້ອງຮຽນ ແລະ ວົງເລັບ ສຳ ນວນ
A ວົງເລັບ ການສະແດງອອກ ແມ່ນບັນຊີລາຍຊື່ຂອງຕົວອັກສອນທີ່ອ້ອມຮອບດ້ວຍ [ ແລະ ]. ມັນກົງກັບອັນໃດອັນໜຶ່ງ
ລັກສະນະໃນບັນຊີລາຍຊື່ນັ້ນ; ຖ້າລັກສະນະທໍາອິດຂອງບັນຊີລາຍຊື່ແມ່ນ cart ^ ຫຼັງຈາກນັ້ນມັນກົງກັນ
ລັກສະນະໃດນຶ່ງ ບໍ່ ໃນບັນຊີລາຍຊື່. ສໍາລັບຕົວຢ່າງ, ການສະແດງອອກປົກກະຕິ [0123456789] ກົງກັນ
ຕົວເລກໃດນຶ່ງ.
ພາຍໃນຕົວສະແດງວົງເລັບ, ກ ລະດັບ ການສະແດງອອກ ປະກອບດ້ວຍສອງຕົວລະຄອນທີ່ແຍກອອກດ້ວຍ a
ຂີດໝາຍ. ມັນກົງກັບຕົວອັກສອນດຽວທີ່ຈັດຮຽງລະຫວ່າງສອງຕົວອັກສອນ, ລວມທັງ,
ການນໍາໃຊ້ລໍາດັບການລວບລວມຂອງທ້ອງຖິ່ນແລະຊຸດຕົວອັກສອນ. ຕົວຢ່າງ, ໃນຄ່າເລີ່ມຕົ້ນ C
ທ້ອງຖິ່ນ, [ໂຄສະນາ] ເທົ່າກັບ [ກຂຄງ]. ຫຼາຍທ້ອງຖິ່ນຈັດຮຽງຕົວອັກສອນຕາມລໍາດັບວັດຈະນານຸກົມ,
ແລະຢູ່ໃນທ້ອງຖິ່ນເຫຼົ່ານີ້ [ໂຄສະນາ] ປົກກະຕິແລ້ວບໍ່ທຽບເທົ່າກັບ [ກຂຄງ]; ມັນອາດຈະທຽບເທົ່າ
to [aBbCCDd], ຍົກຕົວຢ່າງ. ເພື່ອໃຫ້ໄດ້ຮັບການຕີຄວາມແບບດັ້ງເດີມຂອງວົງເລັບ
expressions, ທ່ານສາມາດນໍາໃຊ້ C locale ໂດຍການຕັ້ງຄ່າ LC_ALL ສະພາບແວດລ້ອມປ່ຽນແປງໄດ້
ມູນຄ່າ C.
ສຸດທ້າຍ, ຫ້ອງຮຽນທີ່ມີຊື່ສະເພາະຂອງຕົວອັກສອນແມ່ນຖືກກໍານົດໄວ້ລ່ວງໜ້າພາຍໃນຕົວສະແດງວົງເລັບ, ເປັນ
ຕິດຕາມ. ຊື່ຂອງພວກເຂົາແມ່ນຄໍາອະທິບາຍດ້ວຍຕົນເອງ, ແລະພວກເຂົາແມ່ນ [:alnum:], [:alpha:], [:cntrl:],
[:ຕົວເລກ:], [:ກຣາຟ:], [:ຕ່ໍາກວ່າ:], [:ພິມ:], [:punct:], [:ຊ່ອງ:], [:ເທິງ:], ແລະ
[:xdigit:]. ຍົກຕົວຢ່າງ, [[:alnum:]] ຫມາຍເຖິງຫ້ອງຮຽນຕົວອັກສອນຂອງຕົວເລກແລະຕົວອັກສອນໃນ
ທ້ອງຖິ່ນໃນປະຈຸບັນ. ໃນການເຂົ້າລະຫັດ C locale ແລະ ASCII character, ນີ້ແມ່ນຄືກັນກັບ
[0-9A-Za-z]. (ໃຫ້ສັງເກດວ່າວົງເລັບໃນຊື່ຊັ້ນຮຽນເຫຼົ່ານີ້ແມ່ນສ່ວນຫນຶ່ງຂອງຊື່ສັນຍາລັກ,
ແລະຕ້ອງຖືກລວມຢູ່ໃນນອກຈາກວົງເລັບ delimiting ການສະແດງອອກວົງເລັບ.) ຫຼາຍທີ່ສຸດ
ຕົວອັກສອນ meta ສູນເສຍຄວາມຫມາຍພິເສດຂອງພວກເຂົາພາຍໃນການສະແດງອອກຂອງວົງເລັບ. ລວມມີ ກ
literal ] ວາງມັນໄວ້ທໍາອິດໃນບັນຊີລາຍຊື່. ເຊັ່ນດຽວກັນ, ເພື່ອປະກອບມີຕົວຫນັງສື ^ ວາງມັນຢູ່ທຸກບ່ອນ
ແຕ່ທໍາອິດ. ສຸດທ້າຍ, ເພື່ອປະກອບມີຕົວຫນັງສື - ວາງມັນສຸດທ້າຍ.
Anchoring
ການດູແລ ^ ແລະເຄື່ອງຫມາຍເງິນໂດລາ $ ແມ່ນຕົວອັກສອນ meta ຕາມລໍາດັບທີ່ກົງກັບຫວ່າງເປົ່າ
string ໃນຕອນຕົ້ນແລະທ້າຍຂອງແຖວ.
ໄດ້ backslash ລັກສະນະ ແລະ ພິເສດ ສຳ ນວນ
ສັນຍາລັກ \< ແລະ \> ຕາມລໍາດັບຈັບຄູ່ສະຕຣິງເປົ່າໃນຕອນຕົ້ນແລະທ້າຍຂອງ a
ຄໍາ. ສັນຍາລັກ \b ກົງກັບສະຕຣິງຫວ່າງຢູ່ຂອບຂອງຄຳສັບໃດໜຶ່ງ, ແລະ \B ກົງກັບ
ສະຕຣິງຫວ່າງເປົ່າໃຫ້ມັນ ບໍ່ ຢູ່ຂອບຂອງຄໍາສັບໃດຫນຶ່ງ. ສັນຍາລັກ \w ແມ່ນຄໍາສັບຄ້າຍຄືສໍາລັບ
[_[:alnum:]] ແລະ \W ແມ່ນຄໍາສັບຄ້າຍຄືສໍາລັບ [^_[:alnum:]].
ການເລົ່າເລື່ອງ
ການສະແດງອອກປົກກະຕິອາດຈະຖືກປະຕິບັດຕາມໂດຍຫນຶ່ງໃນຕົວປະຕິບັດການຊໍ້າຄືນຫຼາຍ:
? ລາຍການກ່ອນໜ້າແມ່ນເປັນທາງເລືອກ ແລະຖືກຈັບຄູ່ຫຼາຍສຸດຄັ້ງດຽວ.
* ລາຍການກ່ອນໜ້າຈະຖືກຈັບຄູ່ສູນ ຫຼື ຫຼາຍກວ່ານັ້ນ.
+ ລາຍການກ່ອນໜ້າຈະຖືກຈັບຄູ່ໜຶ່ງ ຫຼືຫຼາຍຄັ້ງ.
{n} ລາຍການກ່ອນໜ້າແມ່ນກົງກັນແທ້ n ເວລາ.
{n,} ລາຍການກ່ອນໜ້າແມ່ນກົງກັນ n ຫຼືຫຼາຍເທື່ອ.
{,m} ລາຍການກ່ອນໜ້າແມ່ນກົງກັນຫຼາຍທີ່ສຸດ m ເທື່ອ. ນີ້ແມ່ນສ່ວນຂະຫຍາຍ GNU.
{n,m} ລາຍການກ່ອນໜ້າແມ່ນກົງກັນຢ່າງໜ້ອຍ n ເທື່ອ, ແຕ່ບໍ່ເກີນ m ເວລາ.
ການສະຫລຸບ
ສອງສຳນວນປົກກະຕິອາດຈະປະສົມກັນ; ການສະແດງຜົນປົກກະຕິທີ່ກົງກັບອັນໃດນຶ່ງ
string ສ້າງຂຶ້ນໂດຍການ concatenating ສອງ substrings ທີ່ກົງກັນຕາມລໍາດັບ concatenated
ສຳ ນວນ.
ສະຫຼັບ
ສອງການສະແດງຜົນປົກກະຕິອາດຈະຖືກເຂົ້າຮ່ວມໂດຍຕົວປະຕິບັດການ infix |; ຜົນໄດ້ຮັບເປັນປົກກະຕິ
expression ກົງກັບສະຕຣິງໃດນຶ່ງທີ່ກົງກັນກັບຕົວສະແດງອອກ.
ຄວາມ ສຳ ຄັນກ່ອນ
ການຊໍ້າຄືນມີສ່ວນສຳຄັນກວ່າການລວມເຂົ້າກັນ, ເຊິ່ງໃນນັ້ນມີສ່ວນສຳຄັນກວ່າ
ສະຫຼັບ. ການສະແດງອອກທັງໝົດອາດຈະຖືກປິດຢູ່ໃນວົງເລັບເພື່ອລົບລ້າງສິ່ງເຫຼົ່ານີ້
ກົດລະບຽບກ່ອນຫນ້າແລະປະກອບເປັນ subexpression.
ກັບຄືນໄປບ່ອນ ເອກະສານ ແລະ ການສະແດງອອກຍ່ອຍ
ອ້າງອິງຍ້ອນຫຼັງ \n, ບ່ອນທີ່ n ເປັນຕົວເລກດຽວ, ກົງກັບສະຕຣິງຍ່ອຍທີ່ກົງກັນກ່ອນໜ້ານີ້
ໂດຍ nth ການສະແດງອອກຍ່ອຍວົງເລັບຂອງການສະແດງຜົນປົກກະຕິ.
ພື້ນຖານ vs ການຂະຫຍາຍ ເປັນປົກກະຕິ ສຳ ນວນ
ໃນການສະແດງອອກປົກກະຕິພື້ນຖານຂອງຕົວອັກສອນ meta ?, +, {, |, (, ແລະ ) ສູນເສຍພິເສດຂອງເຂົາເຈົ້າ
ຄວາມໝາຍ; ແທນທີ່ຈະໃຊ້ສະບັບ backslashed \?, \+, \{, \|, \(, ແລະ \).
ENVIRONMENT ຄວາມຮັບຜິດຊອບ
ພຶດຕິ ກຳ ຂອງ grep ໄດ້ຮັບຜົນກະທົບຈາກຕົວແປສະພາບແວດລ້ອມຕໍ່ໄປນີ້.
ສະຖານທີ່ສໍາລັບປະເພດ LC_ຟູ ຖືກກໍານົດໂດຍການກວດເບິ່ງສາມຕົວແປສະພາບແວດລ້ອມ
LC_ALL, LC_ຟູ, ພາສາ, ໃນຄໍາສັ່ງນັ້ນ. ທໍາອິດຂອງຕົວແປເຫຼົ່ານີ້ທີ່ຖືກກໍານົດໃຫ້ລະບຸ
ທ້ອງຖິ່ນ. ຕົວຢ່າງ, ຖ້າ LC_ALL ບໍ່ໄດ້ຕັ້ງ, ແຕ່ LC_MESSAGES ຖືກກໍານົດໃຫ້ pt_BR, ຫຼັງຈາກນັ້ນ
ທ້ອງຖິ່ນປອກຕຸຍການ Brazilian ຖືກນໍາໃຊ້ສໍາລັບການ LC_MESSAGES ປະເພດ. ທ້ອງຖິ່ນ C ຖືກໃຊ້ຖ້າ
ບໍ່ມີຕົວແປສະພາບແວດລ້ອມເຫຼົ່ານີ້ຖືກຕັ້ງ, ຖ້າແຄັດຕາລັອກຂອງທ້ອງຖິ່ນບໍ່ໄດ້ຖືກຕິດຕັ້ງ, ຫຼືຖ້າ
grep ບໍ່ໄດ້ຖືກລວບລວມດ້ວຍການຮອງຮັບພາສາແຫ່ງຊາດ (NLS).
GREP_OPTIONS
ຕົວແປນີ້ກໍານົດທາງເລືອກເລີ່ມຕົ້ນທີ່ຈະວາງໄວ້ຢູ່ທາງຫນ້າຂອງຄວາມຊັດເຈນໃດໆ
ທາງເລືອກ. ເນື່ອງຈາກວ່ານີ້ເຮັດໃຫ້ເກີດບັນຫາໃນເວລາທີ່ຂຽນ scripts portable, ຄຸນນະສົມບັດນີ້ຈະ
ຈະຖືກໂຍກຍ້າຍອອກໃນການປ່ອຍໃນອະນາຄົດຂອງ grep, ແລະ grep ເຕືອນຖ້າຫາກວ່າມັນຖືກນໍາໃຊ້. ກະລຸນາໃຊ້
alias ຫຼື script ແທນ.
GREP_COLOR
ຕົວແປນີ້ລະບຸສີທີ່ໃຊ້ເພື່ອເນັ້ນໃສ່ຂໍ້ຄວາມທີ່ກົງກັນ (ບໍ່ຫວ່າງເປົ່າ). ມັນ
ຖືກຄັດຄ້ານໃນເງື່ອນໄຂ GREP_COLORS, ແຕ່ຍັງໄດ້ຮັບການສະຫນັບສະຫນູນ. ໄດ້ mt, ms, ແລະ mc
ຄວາມສາມາດຂອງ GREP_COLORS ມີບູລິມະສິດຫຼາຍກວ່າມັນ. ມັນພຽງແຕ່ສາມາດລະບຸສີ
ໃຊ້ເພື່ອເນັ້ນໃສ່ຂໍ້ຄວາມທີ່ກົງກັນບໍ່ຫວ່າງໃນແຖວທີ່ກົງກັນໃດໆ (ແຖວທີ່ເລືອກ
ໃນເວລາທີ່ -v ທາງເລືອກແຖວຄໍາສັ່ງຖືກລະເວັ້ນ, ຫຼືເສັ້ນບໍລິບົດໃນເວລາທີ່ -v is
ລະບຸ). ຄ່າເລີ່ມຕົ້ນແມ່ນ 01 31, ຊຶ່ງຫມາຍຄວາມວ່າເປັນຂໍ້ຄວາມ foreground ສີແດງເຂັ້ມຢູ່ໃນ
ພື້ນຫຼັງເລີ່ມຕົ້ນຂອງ terminal.
GREP_COLORS
ລະບຸສີ ແລະຄຸນລັກສະນະອື່ນໆທີ່ໃຊ້ເພື່ອເນັ້ນໃສ່ພາກສ່ວນຕ່າງໆຂອງ
ຜົນຜະລິດ. ຄ່າຂອງມັນແມ່ນລາຍການຄວາມສາມາດທີ່ແຍກອອກໂດຍຈໍ້າສອງເມັດທີ່ຕັ້ງໄວ້ໃນຕອນຕົ້ນ
ms=01;31:mc=01;31:sl=:cx=:fn=35:ln=32:bn=32:se=36 ກັບ rv ແລະ ne ປຸ້ຍ
ຄວາມສາມາດຖືກລະເວັ້ນ (ເຊັ່ນ, ບໍ່ຖືກຕ້ອງ). ຄວາມສາມາດສະຫນັບສະຫນູນແມ່ນດັ່ງຕໍ່ໄປນີ້.
sl= ສະຕຣິງຍ່ອຍ SGR ສໍາລັບເສັ້ນທີ່ເລືອກທັງໝົດ (ເຊັ່ນ: ສາຍທີ່ກົງກັນເມື່ອ -v
ທາງເລືອກແຖວຄໍາສັ່ງຖືກລະເວັ້ນ, ຫຼືເສັ້ນທີ່ບໍ່ກົງກັນໃນເວລາທີ່ -v ແມ່ນລະບຸໄວ້).
ຢ່າງໃດກໍຕາມ, boolean rv ຄວາມສາມາດແລະ -v ທາງເລືອກແຖວຄໍາສັ່ງແມ່ນທັງສອງ
ລະບຸໄວ້, ມັນໃຊ້ກັບສາຍທີ່ກົງກັບບໍລິບົດແທນ. ຄ່າເລີ່ມຕົ້ນແມ່ນ
ຫວ່າງເປົ່າ (ເຊັ່ນ, ຄູ່ສີເລີ່ມຕົ້ນຂອງ terminal).
cx= ສະຕຣິງຍ່ອຍ SGR ສໍາລັບເສັ້ນບໍລິບົດທັງໝົດ (ເຊັ່ນ: ເສັ້ນທີ່ບໍ່ກົງກັນໃນເວລາທີ່ -v
ທາງເລືອກແຖວຄໍາສັ່ງຖືກລະເວັ້ນ, ຫຼືເສັ້ນກົງກັນໃນເວລາທີ່ -v ແມ່ນລະບຸໄວ້). ຖ້າ
ແນວໃດກໍ່ຕາມ boolean ໄດ້ rv ຄວາມສາມາດແລະ -v ທາງເລືອກແຖວຄໍາສັ່ງແມ່ນທັງສອງ
ລະບຸໄວ້, ມັນໃຊ້ກັບເສັ້ນທີ່ບໍ່ກົງກັນທີ່ເລືອກແທນ. ຄ່າເລີ່ມຕົ້ນ
ຫວ່າງເປົ່າ (ເຊັ່ນ: ຄູ່ສີເລີ່ມຕົ້ນຂອງເຄື່ອງໝາຍປາຍທາງ).
rv ຄ່າບູລີນທີ່ປີ້ນກັບ (ສະຫຼັບ) ຄວາມຫມາຍຂອງ sl= ແລະ cx=
ຄວາມສາມາດໃນເວລາທີ່ -v ຕົວເລືອກແຖວຄໍາສັ່ງແມ່ນຖືກກໍານົດ. ຄ່າເລີ່ມຕົ້ນແມ່ນ
false (ie, ຄວາມສາມາດຖືກລະເວັ້ນ).
mt=01;31
ສະຕຣິງຍ່ອຍ SGR ສຳລັບການຈັບຄູ່ຂໍ້ຄວາມທີ່ບໍ່ຫວ່າງເປົ່າຢູ່ໃນແຖວທີ່ກົງກັນໃດໆ (ເຊັ່ນ, a
ເສັ້ນທີ່ເລືອກໃນເວລາທີ່ -v ທາງເລືອກແຖວຄໍາສັ່ງຖືກລະເວັ້ນ, ຫຼືເສັ້ນບໍລິບົດ
ໃນເວລາທີ່ -v ແມ່ນລະບຸໄວ້). ການຕັ້ງຄ່ານີ້ແມ່ນເທົ່າກັບການຕັ້ງຄ່າທັງສອງ ms= ແລະ
mc= ໃນເວລາດຽວກັນກັບມູນຄ່າດຽວກັນ. ຄ່າເລີ່ມຕົ້ນແມ່ນຕົວໜັງສືສີແດງເຂັ້ມ
ເໜືອພື້ນຫຼັງເສັ້ນປະຈຸບັນ.
ms=01;31
ສະຕຣິງຍ່ອຍ SGR ສຳລັບການຈັບຄູ່ຂໍ້ຄວາມທີ່ບໍ່ຫວ່າງເປົ່າຢູ່ໃນແຖວທີ່ເລືອກ. (ນີ້ແມ່ນພຽງແຕ່
ການນໍາໃຊ້ໃນເວລາທີ່ -v ທາງເລືອກເສັ້ນຄໍາສັ່ງຖືກລະເວັ້ນ.) ຜົນກະທົບຂອງ sl= (ຫຼື
cx= if rv) ຄວາມສາມາດຍັງມີການເຄື່ອນໄຫວໃນເວລາທີ່ນີ້ເຕະເຂົ້າ. ຄ່າເລີ່ມຕົ້ນແມ່ນ a
ຂໍ້ຄວາມສີແດງເຂັ້ມຢູ່ດ້ານໜ້າຂອງພື້ນຫຼັງເສັ້ນປະຈຸບັນ.
mc=01;31
ສະຕຣິງຍ່ອຍ SGR ສຳລັບການຈັບຄູ່ຂໍ້ຄວາມທີ່ບໍ່ຫວ່າງເປົ່າໃນແຖວບໍລິບົດ. (ນີ້ແມ່ນພຽງແຕ່
ການນໍາໃຊ້ໃນເວລາທີ່ -v ທາງເລືອກເສັ້ນຄໍາສັ່ງແມ່ນກໍານົດ.) ຜົນກະທົບຂອງ cx=
(ຫຼື sl= if rv) ຄວາມສາມາດຍັງມີການເຄື່ອນໄຫວໃນເວລາທີ່ນີ້ເຕະເຂົ້າ. ຄ່າເລີ່ມຕົ້ນແມ່ນ
ດ້ານໜ້າຕົວໜັງສືສີແດງເຂັ້ມຢູ່ເທິງພື້ນຫຼັງເສັ້ນປະຈຸບັນ.
fn=35 SGR substring ສໍາລັບຊື່ໄຟລ໌ prefixing ເສັ້ນເນື້ອໃນໃດ. ຄ່າເລີ່ມຕົ້ນແມ່ນ a
ດ້ານໜ້າຂໍ້ຄວາມສີມ່ວງແດງຢູ່ເທິງພື້ນຫຼັງເລີ່ມຕົ້ນຂອງເຄື່ອງໝາຍປາຍທາງ.
ln=32 ສະຕຣິງຍ່ອຍ SGR ສໍາລັບຕົວເລກແຖວທີ່ນໍາໜ້າເສັ້ນເນື້ອຫາໃດໆ. ຄ່າເລີ່ມຕົ້ນແມ່ນ a
ຂໍ້ຄວາມສີຂຽວຢູ່ເທິງພື້ນຫຼັງເລີ່ມຕົ້ນຂອງ terminal.
bn=32 SGR substring ສໍາລັບ byte offsets prefixing ເສັ້ນເນື້ອໃນໃດ. ຄ່າເລີ່ມຕົ້ນແມ່ນ a
ຂໍ້ຄວາມສີຂຽວຢູ່ເທິງພື້ນຫຼັງເລີ່ມຕົ້ນຂອງ terminal.
se=36 ສະຕຣິງຍ່ອຍ SGR ສໍາລັບຕົວແຍກທີ່ຖືກແຊກໃສ່ລະຫວ່າງຊ່ອງແຖວທີ່ເລືອກ
(:), ລະຫວ່າງເສັ້ນສະແດງຂໍ້ມູນ, (-), ແລະລະຫວ່າງກຸ່ມຂອງສາຍທີ່ຢູ່ຕິດກັນ
ເມື່ອບໍລິບົດທີ່ບໍ່ແມ່ນສູນຖືກລະບຸ (--). ຄ່າເລີ່ມຕົ້ນແມ່ນຂໍ້ຄວາມສີຟ້າສີຟ້າ
foreground ເທິງພື້ນຫລັງເລີ່ມຕົ້ນຂອງ terminal.
ne ຄ່າ Boolean ທີ່ປ້ອງກັນການລຶບລ້າງໄປຫາທ້າຍແຖວໂດຍໃຊ້ Erase in Line
(EL) ໄປຂວາ (\33[ກ) ແຕ່ລະຄັ້ງທີ່ລາຍການສີສິ້ນສຸດລົງ. ນີ້ແມ່ນຈໍາເປັນ
terminals ທີ່ EL ບໍ່ໄດ້ຮັບການສະຫນັບສະຫນູນ. ມັນເປັນປະໂຫຍດຖ້າບໍ່ດັ່ງນັ້ນໃນ terminals
ສໍາລັບການທີ່ back_color_erase (ecb) ຄວາມສາມາດຂອງ terminfo boolean ບໍ່
ນຳໃຊ້, ເມື່ອສີໄຮໄລ້ທີ່ເລືອກບໍ່ກະທົບພື້ນຫຼັງ, ຫຼື
ເມື່ອ EL ຊ້າເກີນໄປ ຫຼືເຮັດໃຫ້ເກີດການສັ່ນສະເທືອນຫຼາຍເກີນໄປ. ຄ່າເລີ່ມຕົ້ນແມ່ນບໍ່ຖືກຕ້ອງ (ເຊັ່ນ:
ຄວາມສາມາດຖືກຍົກເວັ້ນ).
ໃຫ້ສັງເກດວ່າຄວາມສາມາດ boolean ບໍ່ມີ =... ສ່ວນ. ພວກມັນຖືກລະເວັ້ນ (ເຊັ່ນ: ບໍ່ຖືກຕ້ອງ)
ໂດຍຄ່າເລີ່ມຕົ້ນ ແລະກາຍເປັນຄວາມຈິງເມື່ອລະບຸໄວ້.
ເບິ່ງພາກສ່ວນ Select Graphic Rendition (SGR) ໃນເອກະສານຂອງຂໍ້ຄວາມ
terminal ທີ່ຖືກນໍາໃຊ້ສໍາລັບຄ່າທີ່ອະນຸຍາດແລະຄວາມຫມາຍຂອງພວກມັນເປັນລັກສະນະ
ຄຸນລັກສະນະ. ຄ່າຂອງສະຕຣິງຍ່ອຍເຫຼົ່ານີ້ແມ່ນຈຳນວນເຕັມໃນຕົວແທນທົດສະນິຍົມ ແລະສາມາດ
ຖືກເຊື່ອມເຂົ້າກັບເຄື່ອງໝາຍຈຸດ. grep ເອົາການດູແລຂອງການປະກອບຜົນໄດ້ຮັບເປັນ
ລໍາດັບ SGR ຄົບຖ້ວນ (\33[...m). ຄ່າທົ່ວໄປທີ່ຈະລວມເຂົ້າກັນລວມມີ 1 ສຳ ລັບກ້າຫານ,
4 ສໍາລັບການ underline, 5 ສໍາລັບການກະພິບ, 7 ສໍາລັບປີ້ນກັບກັນ, 39 ສໍາລັບສີພື້ນຫລັງເລີ່ມຕົ້ນ, 30 to
37 ສໍາລັບສີພື້ນຫນ້າ, 90 to 97 ສໍາລັບການ 16 ສີໃນຮູບແບບສີທາງຫນ້າ, 38 5 0 to
38 5 255 ສໍາລັບ 88 ສີແລະ 256 ໂຫມດສີດ້ານຫນ້າ, 49 ສໍາລັບຄ່າເລີ່ມຕົ້ນ
ສີພື້ນຖານ, 40 to 47 ສໍາລັບສີພື້ນຖານ, 100 to 107 ສໍາລັບຮູບແບບ 16 ສີ
ສີພື້ນຫລັງ, ແລະ 48 5 0 to 48 5 255 ສໍາລັບໂຫມດ 88 ສີແລະ 256 ສີ
ສີພື້ນຫຼັງ.
LC_ALL, LC_COLLATE, ພາສາ
ຕົວແປເຫຼົ່ານີ້ລະບຸສະຖານທີ່ສໍາລັບ LC_COLLATE ປະເພດ, ເຊິ່ງກໍານົດ
ລໍາດັບ collating ນໍາໃຊ້ເພື່ອຕີຄວາມຫມາຍຂອບເຂດການສະແດງອອກເຊັ່ນ [az].
LC_ALL, LC_CTYPE, ພາສາ
ຕົວແປເຫຼົ່ານີ້ລະບຸສະຖານທີ່ສໍາລັບ LC_CTYPE ປະເພດ, ເຊິ່ງກໍານົດ
ປະເພດຂອງຕົວອັກສອນ, ຕົວຢ່າງ, ຕົວອັກສອນໃດເປັນຊ່ອງຫວ່າງ.
LC_ALL, LC_MESSAGES, ພາສາ
ຕົວແປເຫຼົ່ານີ້ລະບຸສະຖານທີ່ສໍາລັບ LC_MESSAGES ປະເພດ, ເຊິ່ງກໍານົດ
ພາສາທີ່ grep ໃຊ້ສໍາລັບຂໍ້ຄວາມ. ຄ່າເລີ່ມຕົ້ນ C locale ໃຊ້ອາເມລິກາ
ຂໍ້ຄວາມພາສາອັງກິດ.
POSIXLY_CORRECT
ຖ້າຕັ້ງ, grep ປະຕິບັດຕົວຕາມ POSIX ຕ້ອງການ; ຖ້າບໍ່ດັ່ງນັ້ນ, grep ປະຕິບັດຕົວຄືກັບ GNU ອື່ນໆ
ໂຄງການ. POSIX ຮຽກຮ້ອງໃຫ້ທາງເລືອກທີ່ປະຕິບັດຕາມຊື່ໄຟລ໌ຕ້ອງໄດ້ຮັບການປະຕິບັດເປັນ
ຊື່ໄຟລ໌; ໂດຍຄ່າເລີ່ມຕົ້ນ, ທາງເລືອກດັ່ງກ່າວຖືກອະນຸຍາດໃຫ້ຢູ່ທາງຫນ້າຂອງລາຍການ operand
ແລະຖືກປະຕິບັດເປັນທາງເລືອກ. ນອກຈາກນີ້, POSIX ຮຽກຮ້ອງໃຫ້ທາງເລືອກທີ່ບໍ່ໄດ້ຮັບການຍອມຮັບ
ຖືກວິນິດໄສວ່າ "ຜິດກົດຫມາຍ", ແຕ່ຍ້ອນວ່າພວກມັນບໍ່ຜິດກົດຫມາຍຢ່າງແທ້ຈິງ
ແມ່ນການວິນິດໄສພວກເຂົາວ່າ "ບໍ່ຖືກຕ້ອງ". POSIXLY_CORRECT ຍັງປິດການໃຊ້ງານ
_N_GNU_nonoption_argv_flags_, ອະທິບາຍຂ້າງລຸ່ມນີ້.
_N_GNU_nonoption_argv_flags_
(ທີ່ນີ້ N is grepID ຂະບວນການຈໍານວນຂອງ.) ຖ້າຫາກວ່າ iລັກສະນະຂອງສະພາບແວດລ້ອມນີ້
ຄ່າຂອງຕົວແປແມ່ນ 1, ບໍ່ໄດ້ພິຈາລະນາ iປະຕິບັດການຂອງ grep ເປັນທາງເລືອກ,
ເຖິງແມ່ນວ່າມັນເບິ່ງຄືວ່າເປັນອັນຫນຶ່ງ. A shell ສາມາດເຮັດໃຫ້ຕົວແປນີ້ຢູ່ໃນສະພາບແວດລ້ອມສໍາລັບການ
ແຕ່ລະຄໍາສັ່ງທີ່ມັນດໍາເນີນການ, ການລະບຸວ່າ operands ໃດເປັນຜົນໄດ້ຮັບຂອງຊື່ໄຟລ໌
ການຂະຫຍາຍຕົວຂອງ wildcard ແລະດັ່ງນັ້ນບໍ່ຄວນຈະຖືກປະຕິບັດເປັນທາງເລືອກ. ພຶດຕິກໍານີ້
ສາມາດໃຊ້ໄດ້ກັບຫ້ອງສະໝຸດ GNU C, ແລະເມື່ອໃດເທົ່ານັ້ນ POSIXLY_CORRECT ບໍ່ໄດ້ຕັ້ງ.
ອອກ STATUS
ໂດຍປົກກະຕິສະຖານະການອອກແມ່ນ 0 ຖ້າເລືອກເສັ້ນ, 1 ຖ້າບໍ່ມີເສັ້ນຖືກເລືອກ, ແລະ 2 ຖ້າ
ເກີດຄວາມຜິດພາດຂຶ້ນ. ຢ່າງໃດກໍຕາມ, ຖ້າຫາກວ່າ -q or --ງຽບ or --ງຽບ ແມ່ນໃຊ້ແລະສາຍ
ເລືອກແລ້ວ, ສະຖານະທາງອອກແມ່ນ 0 ເຖິງແມ່ນວ່າຈະມີຂໍ້ຜິດພາດເກີດຂຶ້ນ.
COPYRIGHT
ສະຫງວນລິຂະສິດ 1998-2000, 2002, 2005-2016 Free Software Foundation, Inc.
ນີ້ແມ່ນຊອບແວຟຣີ; ເບິ່ງແຫຼ່ງສໍາລັບການຄັດລອກເງື່ອນໄຂ. ບໍ່ມີການຮັບປະກັນ; ບໍ່
ເຖິງແມ່ນສໍາລັບການຄ້າຫຼືຄວາມສອດຄ່ອງສໍາລັບຈຸດປະສົງສະເພາະ.
ໃຊ້ egrep ອອນໄລນ໌ໂດຍໃຊ້ບໍລິການ onworks.net