¡¡¡¡À´Ô´£ºÌì¼«Íø
¡¡¡¡¶ÔÓÚϵͳ¹ÜÀíÔ±»ò³ÌÐòÔ±À´Ëµ£¬µ±ÐèÒªÔÚ¸´ÔÓÅäÖõÄĿ¼ÖлòÕßÔÚ´óÐÍÔ´ÂëÊ÷ÖÐËÑÑ°ÌØ¶¨µÄÎı¾»òģʽʱ£¬grepÀàÐ͵Ť¾ß´ó¸ÅÊÇ×îÊÜ»¶ÓµÄ¡£
¡¡¡¡Èç¹ûgrepÊÇÄã×îϲ»¶µÄ¹¤¾ßÖ®Ò»£¬ÄÇôÄã¿ÉÄÜ»á¸üϲ»¶ack¡£ackÊÇÒ»¸ö»ùÓÚPerlµÄÀàËÆÓÚgrepµÄÃüÁîÐй¤¾ß£¬µ«ÊÇËÑË÷Ëٶȸü¿ì£¬ÄÜÁ¦±Ègrep¸üÇ¿¡£ÓÈÆäÊǵ±ÄãÊdzÌÐòԱʱ£¬ÎÒÇ¿ÁÒÍÆ¼öÄãʹÓÃackÀ´È¡´úgrep¡£
¡¡¡¡ackµÄÓ÷¨·Ç³£ÊÊÓÃÓë´úÂëËÑË÷£¬Òò´Ë³ÌÐòÔ±¿ÉÒÔÔÚÔ´ÂëÊ÷ÖнøÐи´ÔӵIJéѯ£¬¶øÖ»ÐèÒª¸üÉٵİ´¼ü¡£
¡¡¡¡ackµÄÌØÐÔ
¡¡¡¡ackµÄһЩ·Ç³£Ç¿´óµÄÌØÐÔ£º
¡¡¡¡Ä¬ÈÏËÑË÷µ±Ç°¹¤×÷Ŀ¼
¡¡¡¡Ä¬ÈϵݹéËÑË÷×ÓĿ¼
¡¡¡¡ºöÂÔÔªÊý¾ÝĿ¼£¬±ÈÈç.svn,.git,CSVµÈĿ¼
¡¡¡¡ºöÂÔ¶þ½øÖÆÎļþ(±ÈÈçpdf£¬image£¬coredumps)ºÍ±¸·ÝÎļþ(±ÈÈçfoo~,*.swp)
¡¡¡¡ÔÚËÑË÷½á¹ûÖдòÓ¡Ðкţ¬ÓÐÖúÓÚÕÒµ½Ä¿±ê´úÂë
¡¡¡¡ÄÜËÑË÷ÌØ¶¨ÎļþÀàÐÍ(±ÈÈçPerl,C++,Makefile),¸ÃÎļþÀàÐÍ¿ÉÒÔÓжàÖÖÎļþºó׺
¡¡¡¡¸ßÁÁËÑË÷½á¹û
¡¡¡¡Ö§³ÖPerlµÄ¸ß¼¶ÕýÔò±í´ïʽ£¬±ÈgrepËùʹÓÃGNUÕýÔò±í´ïʽ¸üÓбíÏÖÁ¦¡£
¡¡¡¡Ïà±ÈÓÚËÑË÷ËÙ¶È£¬ack×ÜÌåÉϱÈgrep¸ü¿ì¡£ackµÄËÙ¶ÈÖ»Òª±íÏÖÔÚËüµÄÄÚÖõÄÎļþÀàÐ͹ýÂËÆ÷¡£ÔÚËÑË÷¹ý³ÌÖУ¬ackά³Ö×ÅÈϿɵÄÎļþÀàÐ͵ÄÁÐ±í£¬Í¬Ê±Ìø¹ýδ֪»ò²»±ØÒªµÄÎļþÀàÐÍ¡£ËüͬÑù±ÜÃâ¼ì²é¶àÓàµÄÔªÊý¾ÝĿ¼¡£
¡¡¡¡ÔÚLinuxÉϰ²×°ack
¡¡¡¡¾¡¹ÜÔÚ´ó¶àÊýLinux·¢ÐаæÖÐÊÇackÊDZê×¼°ü£¬¿ÉÇáÒ×»ñµÃ(±ÈÈçÔÚ»ùÓÚdebianµÄϵͳÖУ¬ÊÇack-grep°ü£¬¶øÔÚ»ùÓÚRedhatµÄϵͳÖÐÔòÊÇack°ü)£¬µ«ÊÇÓë·¢ÐаæÀ¦°óµÄack°æ±¾ÈÔÈ»ÊÇ1.x,¶øack2.0ÒѾ·¢²¼£¬¶øÇÒÓµÓиü¶àÌØÐÔ¡£
¡¡¡¡Òò´ËÎÒ×¼±¸ÔÚ¹Ù·½ÍøÕ¾ÏÂÔØ£¬È»ºó°²×°ack¡£
¡¡¡¡·½±ãµÄÊÇ£¬ackÔÚ¹ÙÍø¿É¿É×÷Ϊһ¸öµ¥¶ÀµÄPerl½Å±¾»ñµÃ£¬ÆäÖÐÕûºÏÁËËùÓÐÐèÒªÒÀÀµµÄÄ£¿é¡£Òò´Ë£¬Äã²»ÐèÒª¶îÍâ°²×°PerlÄ£¿éÀ´ÔËÐÐÕâ½Å±¾¡£
¡¡¡¡ÎªÁËÔÚÄãµÄLinuxϵͳÖа²×°ack£¬È¥¹ÙÍøÏÂÔØ×îа汾µÄack¡£ÔÚд±¾ÎÄʱ£¬×îеİ汾ÊÇ2.12
¡¡¡¡$ wget http://beyondgrep.com/ack-2.12-single-file $ sudo mv ack-2.12-single-file /usr/local/bin/ack $ sudo chmod 0755 /usr/local/bin/ack
¡¡¡¡ÐèҪעÒâµÄÊÇ£¬ÔÚ»ùÓÚDebianµÄϵͳÖУ¬ÓÐÒ»¸ö¶ÀÁ¢µÄ°üÒ²½Ðack(ººÂëת»»Æ÷)¡£ËùÒÔÈç¹ûÄãÅöÇÉÓÐʹÓÃÄǸö°ü£¬ÄÇôÄã¾Í±ØÐëÖØÃüÃûackÀ´±ÜÃâÃüÃû³åÍ»ÁË¡£
¡¡¡¡ackµÄʹÓð¸Àý
¡¡¡¡1.ÔÚµ±Ç°Ä¿Â¼µÝ¹éËÑË÷µ¥´Ê¡±eat¡±,²»Æ¥ÅäÀàËÆÓÚ¡±feature¡±»ò¡±eating¡±µÄ×Ö·û´®:
¡¡¡¡$ ack -w eat
¡¡¡¡2.ËÑË÷ÓÐÌØÊâ×Ö·ûµÄ×Ö·û´®¡¯$path=.¡¯,ËùÓеÄÔª×Ö·û(±ÈÈ硯$',¡¯.')ÐèÒªÔÚ×ÖÃæÉϱ»Æ¥Åä:
¡¡¡¡$ ack -Q '$path=.' /etc
¡¡¡¡3.³ýÁËdowloadsĿ¼£¬ÔÚËùÓÐĿ¼ËÑË÷¡±about¡±µ¥´Ê:
¡¡¡¡$ ack about --ignore-dir=downloads
¡¡¡¡4.Ö»ËÑË÷°üº¬¡¯protected¡¯µ¥´ÊµÄPHPÎļþ£¬È»ºóͨ¹ýÎļþÃû°ÑËÑË÷½á¹ûÕûºÏÔÚÒ»Æð£¬´òӡÿ¸öÎļþ¶ÔÓ¦µÄËÑË÷½á¹û:
¡¡¡¡$ ack --php --group protected
¡¡¡¡5.»ñÈ¡°üº¬¡¯CFLAG¡¯¹Ø¼ü×ÖµÄMakefileµÄÎļþÃû¡£ÎļþÃûΪ*.mk,makefile,Makefile,GNUmakefileµÄ¶¼ÔÚ¿¼ÂÇ·¶Î§ÄÚ:
¡¡¡¡$ ack --make -l CFLAG
¡¡¡¡6.ÏÔʾÕû¸öÈÕÖ¾Îļþʱ¸ßÁÁÆ¥Åäµ½µÄ×Ö·û´®£º
¡¡¡¡$ tail -f /var/log/syslog | ack --passthru 192.168.1.10
¡¡¡¡7.Òª»»È¡ackÖ§³ÖµÄÎļþ¹ýÂËÀàÐÍ£¬ÔËÐУº
¡¡¡¡$ ack --help-type
¡¡¡¡ÔÎÄÁ´½Ó£º Xmodulo ·Ò룺 ¼«¿Í·¶ - minejo
¡¡¡¡ÒëÎÄÁ´½Ó£º http://www.geekfan.net/6881/
zy3000 ÓÚ 2014-05-13 20:59:27·¢±í:
:0wl;l1
fengcloud ÓÚ 2014-05-05 14:24:53·¢±í:
ÃüÁîÌ«¶à£¬Ä¿Ç°??ÐèÒª£¬?µÃgrep?ÓÃÁË£¬Í¦ºÃʹ£¡
mcl131311 ÓÚ 2014-05-03 20:57:08·¢±í:
лл ÊÕ²ØÁË
zhoudeng ÓÚ 2014-04-21 12:51:37·¢±í:
³õÀ´Õ§µ½£¬Ã»Ç®²»ºÃ»ì°¡£¬ºÇºÇ£¬Ð»Ð»Â¥Ö÷·ÖÏí£¬ºÃºÃѧϰ
franku ÓÚ 2014-03-01 17:00:14·¢±í:
µÚÒ»´ÎÌýµ½ack