ag 搜索工具参数详解

news/2024/10/31 7:34:49/

ag 搜索工具参数详解

Ag 是类似ack, grep的工具,它来在文件中搜索相应关键字。

官方列出了几点选择它的理由:

  • 它比ack还要快 (和grep不在一个数量级上)
  • 它会忽略.gitignore和.hgignore中的匹配文件
  • 如果有你想忽略的文件,你需要将它们加入到 .ignore文件中
  • 它的命令名称更短:-)

安装

ubuntu直接安装:

sudo apt install silversearcher-ag

基本使用

ag的基本使用很直接:在命令后面跟要搜索的字符串即可,它会搜索当前目录下所有文本文件,并返回结果。

ag Module

输出:

在这里插入图片描述

可以看到,会有很清晰地高亮输出显示,而且,真的是,非常快

.ignore 文件中指定的文件名会被跳过,不进行搜索。直接把想要忽略的文件名写进去就行:

# .ignore
model.py
trainer.py

详细格式及命令选项

下面介绍一些 ag 的常用参数选项及其含义:

选项功能
-s / -i / -S大小写敏感 / 不敏感 / 智能大小写判断(默认),即有大写就开启大小写敏感,否则不敏感
-ccount,输出每个文件中有几个匹配字串
-A / -B / -C [NUM]after / before / context,展示匹配到字串的[后/前 / 前后都有] NUM 行,默认2行
-a搜索全部文件,包括 .ignore 忽略的文件,不包括隐藏文件
-DOutput ridiculous amounts of debugging info. Not useful unless you´re actually debugging. (这句是手册原文,笑)
-f追踪软链接,默认不追踪
-g [PATTERN]输出匹配 PATTERN 的文件名
-G [PATTERN]仅搜索文件名匹配 PATTERN 的文件内容
-l / -L仅输出能 / 不能内容匹配成功的文件的文件名,不输出行内容
-m [NUM]仅输出前 NUM 次成功匹配的内容,跳过剩下的,默认为0,即全部输出
-r / -n是 / 否进入目录进行递归搜索,默认会进行递归搜索
-o只输出行中匹配成功的部分
-p [PATH]提供指定的 .ignore 文件的路径,默认为当前目录下
-Q不将 PATTERN 按照正则表达式来解析
-u搜索所有文件,包括二进制文件,但还是会忽略 .ignore 等文件
-U忽略 VCS ignore文件(包括.gitignore, .hgignore),但仍然会考虑 .ignore,就是前面两者中的内容会被搜索,但是 .ignore 中的内容还是会被忽略
-w只匹配整个单词
-V输出版本信息
-v匹配所有不包含指定字串的行
z搜索压缩文件中的内容

另外一些选项:

选项功能
--ackmate以可由AckMate解析的格式输出结果
--hidden搜索隐藏文件,但不会搜索忽略文件,即与 -a 相反
--depth [NUM]搜索目录深度,-1 为无限制,默认为 25
--ignore PATTERN忽略名称匹配到 PATTERN 的文件或目录的内容,即与 -G 相反
--[no]break搜索结果的不同文件之间是否空行,默认空行
--[no]color是否有颜色高亮显示,默认有
--column输出列号

这就基本全了,还有一些不是很常用的参数,全部的选项参数可 man ag 来查看。


http://www.ppmy.cn/news/516808.html

相关文章

ag-grid 使用记录

ag-grid介绍 ag-grid是一款功能和性能强大外观漂亮的表格插件,ag-grid几乎能满足你对数据表格所有需求。固定列、拖动列大小和位置、多表头、自定义排序等等各种常用又必不可少功能.目前项目使用的是企业版. 企业版与社区版的功能区别请参看功能比较 Vue Data Grid: Community…

Ag-Grid整理

Ag-Grid整理 API文档地址组件用法属性含义API常用方法表格列定义中常用方法Ag-Grid导出代码参照 底部 API文档地址 英文API文档:https://www.ag-grid.com/ 中文API文档:https://www.itxst.com/ag-grid/tutorial.html 组件用法 <!-- 数据列表 --> <ag-grid-vue ref&…

JavaScript下搭建ag-grid

下载ag-grld.js https://github.com/ceolter/ag-grid/ 可以从github中下载&#xff0c;ag-grid.js 在dist目录中&#xff0c;将其取出&#xff0c;放到自己的项目中 导入项目&#xff0c;构建基础骨架 demo.jsp //将 ag-grid.js 导入项目&#xff0c;新建一个单独的文件example…

agGrid不允许对指定行做checkbox选择

官方文档如下描述&#xff1a; https://www.ag-grid.com/javascript-grid-selection/#specify-selectable-rows 界面&#xff1a; 方法一&#xff1a;&#xff08;只控制点击checkbox时不能选择&#xff0c;但是出了一个bug,如有遇到的伙伴望能够交流一下解决方案。 设置某些…

ag-grid表格基本使用方法-React版本

AG表格基本用法及Api 在要使用的项目中&#xff0c;首次使用需要引入相关组件包(注&#xff1a;项目中所有组件都是封装之后的)。引入方式如下:import {Table} from pkg/common/table 引入完成后&#xff0c;在view层需要用到表格的地方直接放入标签。如&#xff1a;<Table…

AgGrid框架的使用感受及前景分析

免责声明&#xff1a;文章源于本人闲情雅致&#xff0c;没有任何广告意图 我向来是不屑于使用前端框架的&#xff0c;最多用一些ui组件&#xff0c;但是ag-grid这个框架太TM好用了。这篇文章介绍下aggrid的一些哲学思想和我的使用感受&#xff0c;顺带记录一些往事。 Competenc…

AG6200 (HDMI转VGA)

AG6200 转换形式&#xff1a;HDMI 1.4b to VGA &#xff1b; 支持分辨率&#xff1a;1920x120060Hz &#xff1b; 支持热插拔检测 &#xff1b; 适应电压&#xff1a;5V To 1.2V&#xff1b; 支持2通道I2S音频接口&#xff1b; 支持1080P分辨率&#xff1b; 封装尺寸&#xff1…

ag-grid在Vue项目中的基本使用

ag-grid官网 1、安装 npm install ag-grid-community ag-grid-vue --save-dev 2、在main.js中引入ag-grid的样式文件 // 引入ag-grid的样式文件 import ../node_modules/ag-grid-community/dist/styles/ag-grid.css; import ../node_modules/ag-grid-community/dist/styles…