成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

如何在Linux上提高文本搜索效率?

運維 系統(tǒng)運維
對于系統(tǒng)管理員或程序員來說,當需要在復雜配置的目錄中或者在大型源碼樹中搜尋特定的文本或模式時,grep類型的工具大概是最受歡迎的。如果grep是你最喜歡的工具之一,那么你可能會更喜歡ack,ack能力比grep更強。

對于系統(tǒng)管理員或程序員來說,當需要在復雜配置的目錄中或者在大型源碼樹中搜尋特定的文本或模式時,grep類型的工具大概是***的。

如果grep是你最喜歡的工具之一,那么你可能會更喜歡ack。ack是一個基于Perl的類似于grep的命令行工具,但是搜索速度更快,能力比grep更強。尤其是當你是程序員時,我強烈推薦你使用ack來取代grep。

ack的用法非常適用與代碼搜索,因此程序員可以在源碼樹中進行復雜的查詢,而只需要更少的按鍵。

ack的特性

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

  • 默認搜索當前工作目錄
  • 默認遞歸搜索子目錄
  • 忽略元數(shù)據(jù)目錄,比如.svn,.git,CSV等目錄
  • 忽略二進制文件(比如pdf,image,coredumps)和備份文件(比如foo~,*.swp)
  • 在搜索結果中打印行號,有助于找到目標代碼
  • 能搜索特定文件類型(比如Perl,C++,Makefile),該文件類型可以有多種文件后綴
  • 高亮搜索結果
  • 支持Perl的高級正則表達式,比grep所使用GNU正則表達式更有表現(xiàn)力。

相比于搜索速度,ack總體上比grep更快。ack的速度只要表現(xiàn)在它的內置的文件類型過濾器。在搜索過程中,ack維持著認可的文件類型的列表,同時跳過未知或不必要的文件類型。它同樣避免檢查多余的元數(shù)據(jù)目錄。

在Linux上安裝ack

盡管在大多數(shù)Linux發(fā)行版中是ack是標準包,可輕易獲得(比如在基于debian的系統(tǒng)中,是ack-grep包,而在基于Redhat的系統(tǒng)中則是ack包),但是與發(fā)行版捆綁的ack版本仍然是1.x,而ack2.0已經(jīng)發(fā)布,而且擁有更多特性。

因此我準備在官方網(wǎng)站下載,然后安裝ack。

方便的是,ack在官網(wǎng)可可作為一個單獨的Perl腳本獲得,其中整合了所有需要依賴的模塊。因此,你不需要額外安裝Perl模塊來運行這腳本。

為了在你的Linux系統(tǒng)中安裝ack,去官網(wǎng)下載***版本的ack。在寫本文時,***的版本是2.12

  1. $ wget http://beyondgrep.com/ack-2.12-single-file 
  2. $ sudo mv ack-2.12-single-file /usr/local/bin/ack 
  3. $ sudo chmod 0755 /usr/local/bin/ack 

需要注意的是,在基于Debian的系統(tǒng)中,有一個獨立的包也叫ack(漢碼轉換器)。所以如果你碰巧有使用那個包,那么你就必須重命名ack來避免命名沖突了。

ack的使用案例

1.在當前目錄遞歸搜索單詞”eat”,不匹配類似于”feature”或”eating”的字符串:

  1. $ ack -w eat 

2.搜索有特殊字符的字符串’$path=.’,所有的元字符(比如’$',’.')需要在字面上被匹配:

  1. $ ack -Q '$path=.' /etc 

3.除了dowloads目錄,在所有目錄搜索”about”單詞:

  1. $ ack about --ignore-dir=downloads 

4.只搜索包含’protected’單詞的PHP文件,然后通過文件名把搜索結果整合在一起,打印每個文件對應的搜索結果:

  1. $ ack --php --group protected 

ack_1

5.獲取包含’CFLAG’關鍵字的Makefile的文件名。文件名為*.mk,makefile,Makefile,GNUmakefile的都在考慮范圍內:

  1. $ ack --make -l CFLAG 

6.顯示整個日志文件時高亮匹配到的字符串:

  1. $ tail -f /var/log/syslog | ack --passthru 192.168.1.10 

7.要換取ack支持的文件過濾類型,運行:

  1. $ ack --help-type 

原文鏈接: Xmodulo 翻譯: 極客范 - minejo

譯文鏈接: http://www.geekfan.net/6881/

責任編輯:黃丹 來源: 極客范
相關推薦

2010-05-13 17:23:14

MySQL搜索索引

2010-06-10 13:54:10

MySQL全文搜索

2021-10-12 08:43:19

LinuxSambaWindows

2021-10-02 10:10:47

LinuxBusyBox命令

2018-12-11 11:00:50

Linux字體命令

2020-04-21 14:21:31

LinuxPython

2021-03-10 10:20:06

Linux文本命令

2019-01-07 09:50:06

Linuxtarball命令

2019-11-26 09:20:47

LinuxJava

2019-11-26 16:58:51

Linuxpkgsrc

2023-01-17 07:40:59

LinuxAppImage應用程序

2021-09-11 15:41:55

UbuntuDropbox云服務

2017-03-29 16:18:11

LinuxUbuntuRedmine

2020-04-30 13:50:11

Linux網(wǎng)卡信息

2021-07-12 14:47:16

UbuntuZlib代碼

2021-08-18 11:19:25

FedoraLinuxJava

2022-09-13 08:40:24

AndroidLinux

2018-01-31 12:40:48

Linux命令文件搜索

2011-05-16 13:24:00

MySQL全文搜索效率

2021-11-28 06:33:24

Discord消息收發(fā)應用 Linux
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产一区二区三区 | 久久国产婷婷国产香蕉 | 日本一区二区视频 | 99精品免费在线观看 | 欧美区精品| 国产精品区一区二区三区 | 中国一级大毛片 | 一区二区三区在线观看免费视频 | 毛片在线免费播放 | www.天天操 | 五月香婷婷 | 国产视频日韩 | 黄色国产在线视频 | 久草免费电影 | 在线一区二区三区 | www.婷婷| 欧美国产精品一区二区三区 | 91国产在线视频在线 | 国产精品美女久久久久aⅴ国产馆 | 黄视频网址 | 免费精品 | 欧美性受xxxx白人性爽 | 欧美午夜精品 | 国产精品视频网 | 男人的天堂中文字幕 | 国产精品久久久久一区二区 | 国产一区二区三区四区五区加勒比 | 欧美日韩精品一区二区三区视频 | 97色在线视频 | 国内精品视频一区二区三区 | 亚州无限乱码 | 欧美一二区 | 久久亚洲国产精品 | 国产亚洲一区二区在线观看 | 成人av观看 | 四虎网站在线观看 | 亚洲区一| 欧美一区二区免费 | 欧美一级黄| 国产三级一区二区三区 | 一区二区三区国产 |