ack可以用来替代grep 99%的的使用场景
它很智能,只搜索它“认识”的文件
比如:ab.c这中文件,ack是不会去搜索的
使用-a选项可以搜索所有的文件,但
某些文件是永远都不会搜索的(除非在命令行中指定),比如备份文件。
[no]ignore-dir: ack会在制定目录下递归搜索文件夹,如果要忽略搜索某个文件件,使用--ignore-dir. 如果不忽略,使用--noignore-dir.
-a, --all: 搜索所有文件
-C:打印匹配文本前后的N行文字。-A(after),打印匹配文本后面的N行,-B(befor),打印匹配文本前面的N行。
-c, --count: 覆盖正常输出,打印每个文件匹配文本的次数,没有匹配的文件输出0,可使用-l输出匹配的文件。
--column: 输出匹配的列,很少用到。
-f: 仅列出来会搜索哪些文件,不做真实的搜索
-G REGEXP:仅搜索匹配给定正则的文件
-g REGEXP: -f -G REGEXP的缩写
-i: ignore case
--[no]ignore-dir=xxx: 忽略搜索某个文件
--line=xxx: 只打印匹配文件的某些行,比如 ack Note . --line=3,4,5,6,或者--line=3-6
-l: 只输出有匹配的文件
-L: 只输出没有匹配的文件
-n: 不进行文件夹的递归搜索
--type=TYPE /--type=noTYPE: 指定搜索要包括/排除的文件类型,可以使用--TYPE/noTYPE指定。比如搜索java文件: --java, 不搜索python文件: --nopython
--type-add TYPE=.EXTENSION[,.EXT2...]: EXTENSION和EXT2为扩展名的文件作为type的类型的文件。比如: --type-add python=.ptl,将ptl作为python文件。下次搜索使用--python时则会搜索.ptl文件
--type-set TYPE=ext[, ext2....]: 同上,但会覆盖原来的文件类型定义
-1: 只要搜索到第一次匹配就停止搜索
--help=types: 列出文件类型对应的扩展名
可以使用.ackrc作为ack的配置文件,定义匹配文字的颜色,新定义文件类型和匹配的扩展名等,这样就不用每次都在命令行中指定了。
--type-set=python=.py,.ptl
分享到:
相关推荐
ack用法:http://blog.bccn.net/%E9%9D%99%E5%A4%9C%E6%80%9D/13430
您也可以将ack与helm-ag一起使用。 介绍 helm-ack.el是App :: ack头盔界面。 我建议您使用代替helm-ack。 helm-ag提供了比helm-ack更多的功能,而且helm-ag也支持ack。 截屏 要求 Emacs 24或更高 掌舵1.0或更高 或...
Wack代表Wack ACK 什么? wack目标类似于但在节点中实现。 它的目的不是古怪,但目前是这样。 安装 npm install -g wack 用法 wack searchPattern 将在当前目录(以及递归所有子目录)中搜索searchPattern 选项 ...
确认类型 按文件名查找确认类型用法 var acktypes = require ( 'ack-types' )// acktypes is an object mapping file extension to typeacktypes . compare ( filename , type ) // true or falseacktypes . lookup ...
commonKADS方法论使用的是彼此密切相关的抽象概念,但是如果您不熟悉它们,那么就不那么容易遵循了。只有在对该方法论进行深入研究和实践之后,人们才能最终理解这些概念,它们之间的关系以及微调过程在上下文和概念...
搜索用 nodejs 编写的受“ack”启发的 grep-ish 搜索实用程序。安装 $ npm install -g search用法Usage: search [options] < query> [path ...]Options: -h, --help output usage information -v, --version output ...
ack / ag / pt / rg驱动的代码搜索和查看工具,利用Vim 8的强大功能来支持异步搜索,并允许您使用Edit Mode就地编辑文件。 搜索和探索 演示演示了如何以异步方式搜索单词。 编辑模式 一个演示演示了如何使用在多个...
12、int amqp_basic_ack(发送ask确认) 13、amqp_basic_reject(拒绝ask) 14、amqp_basic_publish(发布消息) 15、amqp_simple_wait_frame(回调等待服务器的结果返回) 16、amqp_basic_get(客户端主动获取服务器的...
网上基本没有这款芯片的demo,参照手册用模拟IIC驱动成功。主要是与普通的读取多了一个Opcode配置。这里设置为双通道读取,硬件上连接BUSY/READY到IO判断转换完成,要注意地址是根据电阻配置的,我的R1,R2均为DNP,...
这种建立连接的方法可以防止产生错误的连接,TCP使用的流量控制协议是可变大小的滑动窗口协议。 第一次握手:建立连接时,HostA发送SYN包(SEQ=a)到HostB,并进入SYN_SEND状态,等待HostB确认。 第二次握手:HostB...
Flume-ng 插件,使用 Redis 列表,带有拉模式源和 Ack 模式接收器 Flume-ng ( )。 该插件基于 Apache Flume 1.5.0.1 和 Redis 2.8.17。 特征 使用 Redis 命令的源列表拉模式 使用 Redis 命令以 ack-mode 接收 用法 ...
用法如果指定了'-i' 选项,后面的单词将被视为输入汇编代码。 '/' 被视为换行符。 如果指定'-i'选项,后面的词将被视为汇编语言输入。 将 '/' 视为换行符。 $ mono p11trans.exe -i 'mov $4, r0' mov ax, #4$ mono p...
用法 useAsyncCallback :fishing_pole: hook 具有任何功能,并为您提供加载和错误状态。 适合处理一般的异步交互。 import { useAsyncCallback } from 'actionsack' function MyAsyncButton ( props ) { const ...
动手观看GRANDstack入门视频快速开始开始使用GRANDstack Starter的最简单方法是创建Neo4j Sandbox实例,并使用create-grandstack-app命令行工具。 (如果通过Neo4j Desktop或Neo4j服务器安装在本地主机上有正在运行...
本文实例讲述了Python队列RabbitMQ 使用方法。分享给大家供大家参考,具体如下: 目前的exchange的路由策略是:每个需要队列的服务独享一个队列(queue),消费者(consumer)采用ACK自动应答模式处理队列消息。 ...
+ 使用RabbitMQ的可靠性机制为客户端返回ACK、异步执行消息持久化 + 使用Dubbo的泛化调用机制实现服务的定向调用,解决了因分布式IM_Server的部署导致的用户信息分散在不同服务器上的问题 + Dubbo泛化调用的地址为...
使用Ag / Ack / CrlSF / etc进行搜索的自定义运算符安装安装安装这个插件用法设置一些自定义映射。 例如: map g/ (operator-ag) " or ack/ctrlsfmap g? (operator-ggrep)map gw (operator-ag-word)map gh (operator...
( "Ack id {}" , ack_id. unwrap ()); // Register for events let (_sub_id, mut event_queue) = client. subscribe ( "peer.heartbeat" ). await ?; // Wait for the next event match event_queue. recv (). ...
手机能够使用联网功能是因为手机底层实现了TCP/IP协议,可以使手机终端通过无线网络建立TCP连接。TCP协议可以对上层网络提供接口,使上层网络数据的传输建立在“无差别”的网络之上。 建立起一个TCP连接需要经过“三...
使用Storm编程,可以通过调用ack和fail方法来确保一条消息的处理成功或失败。不过当元组被重发时,会发生什么呢?你又该如何砍不会重复计算? Storm0.7.0实现了一个新特性——事务性拓扑,这一特性使消息在语义上...