ÉèΪÊ×Ò³ ¼ÓÈëÊÕ²Ø

TOP

grep³£¼ûÓ÷¨×ܽá
2015-07-24 10:55:30 À´Ô´: ×÷Õß: ¡¾´ó ÖРС¡¿ ä¯ÀÀ:1´Î
Tags£ºgrep ³£¼û Ó÷¨ ×ܽá
grep -E 'l\{2,\}' 2.txt
grep -E 'h(ell|a)o' test.txt
grep '[a-z]\{5,\}' test.txt
grep -xf a.txt b.txt  //²éѯaÓëb¹²Í¬´æÔÚµÄÐÐ
grep -vxf b.txt a.txt //²éѯaµÄÐв»ÔÚbÎļþÀïÃæµÄ,¾ÍÊÇa±Èb¶à³öÀ´µÄÐÐ
 
grep -v '^h' test.txt //ÏÔʾ·ÇÒÔh¿ª·¢µÄ
  
grep -E '^(h|y)' test.txt //-EÖ§³ÖÀ©Õ¹ÕýÔò£¬Ï൱ÓÚegrep
 
grep -A 1 'hello' test.txt  //³ýÁËÏÔʾƥÅäµ½µÄÐÐÒ²ÏÔʾËüÖ®ºóµÄÒ»ÐÐ
grep -B 1 'hello' test.txt  //³ýÁËÏÔʾƥÅäµ½µÄÐÐÒ²ÏÔʾËü֮ǰµÄÒ»ÐÐ
grep -C 1 'hello' test.txt  //³ýÁËÏÔʾƥÅäµ½µÄÐÐÒ²ÏÔʾËü֮ǰºÍÖ®ºóµÄÒ»ÐÐ
 
grep -r "hello" xx //ÔÚxxĿ¼²éÕÒ
grep -c //ͳ¼ÆÆ¥ÅäµÄÐÐÊý
grep -n //ÏÔʾÐкÅ

grep -v '^hello' test.txt //ÏÔʾ²»ÒÔhello¿ªÍ·µÄÐÐ
--ºÜ´ÏÃ÷µÄд·¨£¬µÚһλ²»ÒÔh¿ª·¢£¬µÚ¶þλ²»ÒÔe¿ª·¢¡£¡£¡£
  grep  '^[^h]\|^.[^e]\|^..[^l]\|^...[^l]\|^....[^o]'
  
[options]Ö÷Òª²ÎÊý£º
£­c£ºÖ»Êä³öÆ¥ÅäÐеļÆÊý¡£
£­I£º²»Çø·Ö´ó Сд(Ö»ÊÊÓÃÓÚµ¥×Ö·û)¡£
£­h£º²éѯ¶àÎļþʱ²»ÏÔʾÎļþÃû¡£
£­l£º²éѯ¶àÎļþʱֻÊä³ö°üº¬Æ¥Åä×Ö·ûµÄÎļþÃû¡£
£­n£ºÏÔʾƥÅäÐм° Ðкš£
£­s£º²»ÏÔʾ²»´æÔÚ»òÎÞÆ¥ÅäÎı¾µÄ´íÎóÐÅÏ¢¡£
£­v£ºÏÔʾ²»°üº¬Æ¥ÅäÎı¾µÄËùÓÐÐС£


ÃüÁîÕýÔò±í´ïʽ:

 . Æ¥Åäµ¥¸ö×Ö·û Èç..X  yiXÄܲé³öÀ´
 ^ Æ¥ÅäÐÐÊ× ^d ÿÐеÚÒ»¸ö×Ö·ûΪd
 $ Æ¥ÅäÐÐβ T$ ÿÐÐ×îºóÒ»¸ö×Ö·ûΪT
 * Æ¥ÅäÈÎÒâ×Ö·û´®
 \ ÆÁ±ÎÌØÊâ×Ö·ûµÄº¬Òå
 A\{2\}B ×ÖĸA³öÏÖÁ½´Î
 A\{2,\}B ÖÁÉÙ³öÏÖÁ½´Î
 A\{2,4\}B ³öÏÖ2µ½4´Î
[0-9]\{4\}xx[0-9]\{4\} ǰËĸöÊÇÊý×Ö£¬ÖмäÊÇxx,ºóËĸöÊÇÊý×Ö


patternÕýÔò±í´ïʽÖ÷Òª²ÎÊý£º
\£º ºöÂÔÕýÔò±í´ïʽÖÐÌØÊâ×Ö·ûµÄÔ­Óк¬Òå¡£
^£ºÆ¥ÅäÕýÔò±í´ïʽµÄ¿ªÊ¼ÐС£
$: Æ¥ÅäÕýÔò±í´ïʽµÄ½áÊøÐС£
\<£º´ÓÆ¥ÅäÕýÔò±í´ï ʽµÄÐпªÊ¼¡£
궨µ¥´ÊµÄ¿ªÊ¼£¬Èç:/\£ºµ½Æ¥ÅäÕýÔò±í´ïʽµÄÐнáÊø¡£
[ ]£ºµ¥¸ö×Ö·û£¬Èç[A]¼´A·ûºÏÒªÇó ¡£
[ - ]£º·¶Î§£¬Èç[A-Z]£¬¼´A¡¢B¡¢CÒ»Ö±µ½Z¶¼·ûºÏÒªÇó ¡£
¡££ºËùÓеĵ¥¸ö×Ö·û¡£
* £ºÓÐ×Ö·û£¬³¤¶È¿ÉÒÔΪ0
 [^] 
Æ¥ÅäÒ»¸ö²»ÔÚÖ¸¶¨·¶Î§ÄÚµÄ×Ö·û£¬È磺/[^A-RT-Z]ed/Æ¥Åä²»°üº¬A-RºÍT-ZµÄÒ»¸ö×Öĸ¿ªÍ·£¬½ô¸úedµÄÐС£ 

+ 
Æ¥ÅäÇ°ÃæµÄ×Ó±í´ïʽһ´Î»ò¶à´Î¡£ÀýÈ磬'zo+' ÄÜÆ¥Åä "zo" ÒÔ¼° "zoo"£¬µ«²»ÄÜÆ¥Åä "z"¡£+ µÈ¼ÛÓÚ {1,}¡£ 

? 
Æ¥ÅäÇ°ÃæµÄ×Ó±í´ïʽÁã´Î»òÒ»´Î¡£ÀýÈ磬"do(es)?" ¿ÉÒÔÆ¥Åä "do" »ò "does" ÖеÄ"do" ¡£? µÈ¼ÛÓÚ {0,1}¡£


(?=pattern)  
ÕýÏòÔ¤²é£¬ÔÚÈÎºÎÆ¥Åä pattern µÄ×Ö·û´®¿ªÊ¼´¦Æ¥Åä²éÕÒ×Ö·û´®¡£ÕâÊÇÒ»¸ö·Ç»ñȡƥÅ䣬Ҳ¾ÍÊÇ˵£¬¸ÃÆ¥Åä²»ÐèÒª»ñÈ¡¹©ÒÔºóʹÓá£
ÀýÈ磬 'Windows (?=95|98|NT|2000)' ÄÜÆ¥Åä "Windows 2000" ÖÐµÄ "Windows" £¬µ«²»ÄÜÆ¥Åä "Windows 3.1" ÖÐµÄ "Windows"¡£Ô¤²é²»ÏûºÄ×Ö·û£¬Ò²¾ÍÊÇ˵£¬ÔÚÒ»¸öÆ¥Åä·¢Éúºó£¬ÔÚ×îºóÒ»´ÎÆ¥ÅäÖ®ºóÁ¢¼´¿ªÊ¼ÏÂÒ»´ÎÆ¥ÅäµÄËÑË÷£¬¶ø²»ÊÇ´Ó°üº¬Ô¤²éµÄ×Ö·ûÖ®ºó¿ªÊ¼¡£ 

(?!pattern) 
¸ºÏòÔ¤²é£¬ÔÚÈκβ»Æ¥ÅäNegative lookahead matches the search string at any point where a string not matching pattern µÄ×Ö·û´®¿ªÊ¼´¦Æ¥Åä²éÕÒ×Ö·û´®¡£ÕâÊÇÒ»¸ö·Ç»ñȡƥÅ䣬Ҳ¾ÍÊÇ˵£¬¸ÃÆ¥Åä²»ÐèÒª»ñÈ¡¹©ÒÔºóʹÓá£ÀýÈç'Windows (?!95|98|NT|2000)' ÄÜÆ¥Åä "Windows 3.1" ÖÐµÄ "Windows"£¬µ«²»ÄÜÆ¥Åä "Windows 2000" ÖÐµÄ "Windows"¡£Ô¤²é²»ÏûºÄ×Ö·û£¬Ò²¾ÍÊÇ˵£¬ÔÚÒ»¸öÆ¥Åä·¢Éúºó£¬ÔÚ×îºóÒ»´ÎÆ¥ÅäÖ®ºóÁ¢¼´¿ªÊ¼ÏÂÒ»´ÎÆ¥ÅäµÄËÑË÷£¬¶ø²»ÊÇ´Ó°üº¬Ô¤²éµÄ×Ö·ûÖ®ºó¿ªÊ¼
 
(?:pattern) 
Æ¥Åä pattern µ«²»»ñȡƥÅä½á¹û£¬Ò²¾ÍÊÇ˵ÕâÊÇÒ»¸ö·Ç»ñȡƥÅ䣬²»½øÐд洢¹©ÒÔºóʹÓá£ÕâÔÚʹÓà "»ò" ×Ö·û (|) À´×éºÏÒ»¸öģʽµÄ¸÷¸ö²¿·ÖÊǺÜÓÐÓá£
ÀýÈ磬 'industr(?:y|ies) ¾ÍÊÇÒ»¸ö±È 'industry|industries' ¸ü¼òÂԵıí´ïʽ 

pcregrep 'Windows (?=2000|95|98|NT)' test.txt //WindowsºóÃæÊÇ2000»ò95..
pcregrep 'Windows (?!2000|95|98|NT)' test.txt  //WindowsºóÃæ·Ç2000,95,98µÈ
pcregrep 'Windows (?:95|98|NT|2000)' test.txt  //ÓëµÚÒ»ÖÖÒ»Ñù


egrep:
Ϊ grep µÄÀ©³ä°æ±¾, ¸ÄÁ¼ÁËÐí¶à´«Í³ grep ²»ÄÜ»ò²»±ãµÄ²Ù×÷. ±È·½Ëµ:
- grep ֮ϲ»Ö§³Ö ? Óë + ÕâÁ½ÖÖ modifier, µ« egrep Ôò¿É.
- grep ²»Ö§³Ö a|b »ò (abc|xyz) ÕâÀà"»òÒ»"±È¶Ô, µ« egrep Ôò¿É.

fgrep:
²»×÷ RE ´¦Àí, ±í´ïʽ½ö×÷Ò»°ã×Ö·û´®´¦Àí, ËùÓÐ meta ¾ùʧȥ¹¦ÄÜ.

pcregrep:
pcregrep - a grep with Perl-compatible regular expressions , perlÕýÔò£¬ÊÇ×îÁ÷Ðк͹淶µÄ

¡¾´ó ÖРС¡¿¡¾´òÓ¡¡¿ ¡¾·±Ìå¡¿¡¾Í¶¸å¡¿¡¾Êղء¿ ¡¾ÍƼö¡¿¡¾¾Ù±¨¡¿¡¾ÆÀÂÛ¡¿ ¡¾¹Ø±Õ¡¿ ¡¾·µ»Ø¶¥²¿¡¿
·ÖÏíµ½: 
ÉÏһƪ£ºrman¼æÈÝÐÔÒ»ÀÀ ÏÂһƪ£ºMongodbÒ»Ö®¿ìËÙÉÏÊÖ²¿Êð

ÆÀÂÛ

ÕÊ¡¡¡¡ºÅ: ÃÜÂë: (ÐÂÓû§×¢²á)
Ñé Ö¤ Âë:
±í¡¡¡¡Çé:
ÄÚ¡¡¡¡ÈÝ:

¡¤Linuxϵͳ¼ò½é (2025-12-25 21:55:25)
¡¤Linux°²×°MySQL¹ý³Ì (2025-12-25 21:55:22)
¡¤Linuxϵͳ°²×°½Ì³Ì£¨ (2025-12-25 21:55:20)
¡¤HTTP Åc HTTPS µÄ²î„ (2025-12-25 21:19:45)
¡¤ÍøÕ¾°²È«±ØÐ޿ΣºÍ¼ (2025-12-25 21:19:42)