轉載:https://www.cnblogs.com/fnlingnzb-learner/p/9585219.html
1、安裝
wget http://beyondgrep.com/ack-2.12-single-file
sudo mv ack-2.12-single-file /usr/bin/ack
sudo chmod 0755 /usr/bin/ack
2、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