位置: 编程技术 - 正文

CentOS系统里如何提高文本搜索效率?(centos sh)

编辑:rootadmin

推荐整理分享CentOS系统里如何提高文本搜索效率?(centos sh),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:centos怎么操作,centos wol,centos w,centos zsh,centos zsh,centos w,centos w,centos zsh,内容如对您有帮助,希望把文章链接给更多的朋友!

  对于系统管理员或程序员来说,当需要在复杂配置的目录中或者在大型源码树中搜寻特定的文本或模式时,grep类型的工具大概是最受欢迎的。

  如果grep是你最喜欢的工具之一,那么你可能会更喜欢ack。ack是一个基于Perl的类似于grep的命令行工具,但是搜索速度更快,能力比grep更强。尤其是当你是程序员时,我强烈推荐你使用ack来取代grep。

  ack的用法非常适用与代码搜索,因此程序员可以在源码树中进行复杂的查询,而只需要更少的按键。

  ack的特性

  ack的一些非常强大的特性:

  默认搜索当前工作目录

  默认递归搜索子目录

  忽略元数据目录,比如.svn,.git,CSV等目录

  忽略二进制文件(比如pdf,image,coredumps)和备份文件(比如foo~,*.swp)

  在搜索结果中打印行号,有助于找到目标代码

  能搜索特定文件类型(比如Perl,C++,Makefile),该文件类型可以有多种文件后缀

  高亮搜索结果

  支持Perl的高级正则表达式,比grep所使用GNU正则表达式更有表现力。

  相比于搜索速度,ack总体上比grep更快。ack的速度只要表现在它的内置的文件类型过滤器。在搜索过程中,ack维持着认可的文件类型的列表,同时跳过未知或不必要的文件类型。它同样避免检查多余的元数据目录。

  在Linux上安装ack

  尽管在大多数Linux发行版中是ack是标准包,可轻易获得(比如在基于debian的系统中,是ack-grep包,而在基于Redhat的系统中则是ack包),但是与发行版捆绑的ack版本仍然是1.x,而ack2.0已经发布,而且拥有更多特性。

  因此我准备在官方网站下载,然后安装ack。

CentOS系统里如何提高文本搜索效率?(centos sh)

  方便的是,ack在官网可可作为一个单独的Perl脚本获得,其中整合了所有需要依赖的模块。因此,你不需要额外安装Perl模块来运行这脚本。

  为了在你的Linux系统中安装ack,去官网下载最新版本的ack。在写本文时,最新的版本是2.

  $ wget $ sudo mv ack-2.-single-file /usr/local/bin/ack $ sudo chmod /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 ..1.

  7.要换取ack支持的文件过滤类型,运行:

  $ ack --help-type

CentOS下对硬盘读写速度测试的详解 一个偶然装DB数据库的机会,发现安装很慢,于是系统工程师建议我测下硬盘读写速度,发现读写速度才左右,机器是dellR内存G操作系统是centos

CentOS中禁止用户ssh和sftp登陆的详解 在linux中出于安全的需要,我们会禁止某些用户SSH登陆系统进行操作。我这里以centos操作系统为例记录下如何进行处理。1、打开sshd的配置文件vi/etc/ssh/ss

CentOS系统备份脚本详解 #!/bin/sh#设定变量bak_path=/root/bak_linuxdate=$(date+%Y%m%d)log_file=$bak_path/$date#log.log#把执行结果写到日志中exec1$log_file#把要备份的目录打包放到$bak_path目录下tar-

标签: centos sh

本文链接地址:https://www.jiuchutong.com/biancheng/353706.html 转载请保留说明!

上一篇:CentOS服务器上如何查找肉鸡?CentOS服务器上查找肉鸡的方法(centos5.8服务器)

下一篇:CentOS下对硬盘读写速度测试的详解(centos查看硬盘信息的命令)

  • 小规模季度不超30万需要交什么税
  • 以设备投资入股要交增值税
  • 预缴税款可以抵税吗
  • 盈余公积的作用与意义
  • 应收股利在资产负债表中填在哪里
  • 新办企业一定要社保登记吗
  • 进项税额转出结平分录怎么写
  • 运输发票备注怎么填
  • 滴滴出行发票可以抵扣进项税吗
  • 食堂买菜无发票可以在费用中开支吗
  • 门面入股做生意
  • 长期待摊费用可以抵扣吗
  • 长期股权投资如何审计
  • 交防伪税控服务费怎么交
  • 先收入后开票如何做账
  • 别人垫付的医药费,可以报销吗
  • 建筑行业预算
  • 关于支付税审费的问题
  • 营改增的真实目的
  • 企业所得税视同销售的捐赠扣除
  • 计提个人负担的社会保险费分录
  • 取得免税农产品进项税转出
  • 信息服务费发票范围
  • 个人使用过的设备有哪些
  • 工资中的话费补助是什么
  • 上市公司现金分红怎么派发
  • 苹果助手hi
  • win10护眼模式在哪
  • win10 删除文件 没有找到项目
  • Linux系统复制粘贴
  • 库存现金的主要内容有哪些
  • 个体户一般纳税人可以开13个点的专票吗
  • 64位windows系统下安装Memcache缓存
  • mmc.exe是什么进程
  • mac系统怎么添加网络映射
  • winspool.drv病毒
  • 图文详解:台盆柜安装的全过程
  • 核定征收注意事项
  • 资产处置收益科目借贷方向
  • yii2框架从入门到精通pdf
  • 附有退回条件的销售商
  • 出售债券税费处理会计分录怎么写
  • php中split
  • php array_fill
  • 六款小巧的HTTP Server[C语言] 贵贵的博客 开发|架构|开源|共享
  • 帝国cms使用手册
  • 物流公司的会计好做吗
  • 取得了水电费发票怎么做
  • 个体工商户没有收入要交税吗
  • 投标保证金属于什么费用
  • 房屋出租怎么开电子发票
  • 土地增值税清算的条件
  • 控股子公司注销母公司账务处理实例
  • 国税局领发票是哪些项目需要收取费用
  • 收回上年度拨款怎么做账
  • 税前一次性扣除和100%加计扣除
  • 小规模纳税人实行简易征收办法
  • 补计提所得税怎么做分录
  • 非流动资产基金和专用基金
  • 长期股权投资利润调整加折旧
  • 企业短期借款可以是个人吗
  • mysql 5.7启动
  • Ubuntu软件源更新
  • window配置在哪
  • win7系统怎么删除输入法
  • linux系统设置网络
  • opengl
  • 批处理语言 从入门到精通
  • jquery的实现原理
  • shell脚本spawn
  • unity3d官方案例
  • u盘备份系统操作步骤
  • java多线程产生死锁
  • javascript 快速入门
  • javascript的
  • Javascript Object 对象学习笔记
  • android设计模式单例有几种
  • 国家税务系统电子税务局电话
  • 督察综合服务中心是干什么的
  • 特价机票包含燃油费和机场建设费吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设