Ag (the_silver_searcher) 安装使用

if (I am a Programmer || I have a strong sense of time) I use ag


1. 安装命令行ag(代码中行首的“\”是多余的)

\#!/usr/bin/env bash
\#Author Leslie Guan
\#make sure you have the root permission
\#Usage . install_ag.sh
set -x
TEMP_DIR=$(mktemp -d Leslie.Guan.XXXXXX)
cd ${TEMP_DIR}
wget https://github.com/ggreer/the_silver_searcher/archive/master.zip
TAR_DIR=$(unzip *.zip)
TAR_DIR=${TAR_DIR%%/*}
TAR_DIR=${TAR_DIR##*:}
cd ${TAR_DIR}
apt-get install -y automake pkg-config libpcre3-dev zlib1g-dev liblzma-dev --force-yes
./build.sh && make install
cd ../../
rm -rf ${TEMP_DIR}
ag -V
set +x 

ubuntu13.10以后可以直接运行

apt-get install silversearcher-ag

ag_GitHub

2. 安装Vim插件(必须先安装ag命令行工具)(代码中行首的“\”是多余的)

\#!/usr/bin/env bash
\#Author Leslie Guan
\#make sure you have the root permission
\#Usage . install_Ag4Vim.sh
set -x
TEMP_DIR=$(mktemp -d Leslie.Guan.XXXXXX)
cd ${TEMP_DIR}
wget https://github.com/rking/ag.vim/archive/master.zip
TAR_DIR=$(unzip *.zip)
TAR_DIR=${TAR_DIR%%/*}
TAR_DIR=${TAR_DIR##*:}
cd ${TAR_DIR}
cp cp {plugin,autoload,doc} /usr/share/vim/vimcurrent/ -rf 
cd ../../
rm -rf ${TEMP_DIR}                                                                                                                                            
set +x

ag.vim_GitHub

3. 使用

命令行使用

ag HelloWorld
ag HelloWorld path/to/search
Ag HelloWorld
Ag HelloWorld path/to/search

在Ag查找出来的quickfix窗口中,你可以使用下列命令:

e    to open file and close the quickfix window
o    to open (same as enter)
go   to preview file (open but maintain focus on ag.vim results)
t    to open in new tab
T    to open in new tab silently
h    to open in horizontal split
H    to open in horizontal split silently
v    to open in vertical split
gv   to open in vertical split silently
q    to close the quickfix window

详细使用方法请查看帮助:

man ag

4. Why ag

速度对比ag>ack>grep

在android全部源码中查找(测试环境20线程32GB内存):

time ag -i activity
real    2m42.568s
user    0m16.049s
sys 1m29.358s
time ack -i activity
real    5m17.780s
user    1m35.830s
sys 0m17.521s
time grep -Hrni activity .
real    49m27.518s
user    43m13.918s
sys 0m38.178s

What's so great about Ag?

It searches code about 3–5× faster than ack.
It ignores file patterns from your .gitignore and .hgignore.
If there are files in your source repo you don't want to search, just add their patterns to a .agignore file. *cough* extern *cough*
The command name is 33% shorter than ack!

转载于:https://www.cnblogs.com/GMCisMarkdownCraftsman/p/3795315.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值