• 在线工具
  • - 计算器
    • 字符计数
  • - 下载
    • TikTok 下载
    • 抖音下载
  • - 网络工具
    • BASE64
    • Base64 转图片
    • 图片转 Base64
    • URL 编码
    • JavaScript
    • 时间戳
    • Unicode 转换器
    • JSON 格式化
    • 修改扩展名
    • 制作列表
    • CSS 优化器
  • - 加密工具
    • MD5 加密
    • 随机生成器
  • - 图像工具
    • 图像压缩
    • 二维码生成器
    • 二维码识别器
    • 壁纸预览
    • 图片 EXIF
  • - 信息表
    • 血型遗传
    • 服装尺码
  • [email protected]
DopuBox
  • English
  • Español
  • Français
  • 日本語
  • 한국어
  • 简体中文
  • 繁體中文
全部 ニュース Meta Code 文化・アート
CentOSシステムではどのようにテキスト検索の効率を高めますか?
2022-02-15

システム管理者やプログラマーにとって、複雑な構成のディレクトリや大規模なソースツリーで特定のテキストやモードを検索する必要がある場合、grepタイプのツールが最も人気があります。

grepがあなたの大好きなツールの一つであれば、ackがもっと好きになるかもしれません。ackはPerlベースのgrepに似たコマンドラインツールですが、検索速度が速く、grepよりも能力が優れています。特にプログラマーの場合、grepの代わりにackを使うことを強くお勧めします。

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,ack 2.0はすでにリリースされており、より多くの機能を備えています。

そこで公式サイトでダウンロードしてackをインストールするつもりです。

便利なことに、ackは公式サイトで単独のPerlスクリプトとして取得され、依存するモジュールがすべて統合されています。そのため、このスクリプトを実行するためにPerlモジュールを追加インストールする必要はありません。

あなたのLinuxシステムにackをインストールするために、公式サイトに最新バージョンのackをダウンロードします。本文を書く時、最新のバージョンは2.12です。

  $ wget http://beyondgrep.com/ack-2.12-single-file $ sudo mv ack-2.12-single-file /usr/local/bin/ack $ sudo chmod 0755 /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 192.168.1.10

  7.ackでサポートされているファイルフィルタタイプを交換するには、次の手順に従います。

  $ ack --help-type


ソース元URL:https://dopubox.com/article/p/1a7a78ee48e44f3c

其他工具
  • 字符计数 TikTok 下载 抖音下载 BASE64 Base64 转图片 图片转 Base64 URL 编码 JavaScript 时间戳 Unicode 转换器 JSON 格式化 修改扩展名 制作列表 CSS 优化器 MD5 加密 随机生成器 图像压缩 二维码生成器 二维码识别器 壁纸预览 图片 EXIF 血型遗传 服装尺码
  • 週末見たい展覧会5選。今週は木下佳通代の個展、テルマエ展、UESHIMA MUSEUMなど。【2024年6月第1週】
    2024-05-29

    小学館も来週に報告書公表
    2024-05-31

    【6月1日~2日】週末必見の“アート&デザイン”まとめ!
    2024-06-01

    あらゆる知識に精通した「天才」が教えてくれた、頭を良くするための新書の読み方と「究極のインプット・アウトプット」の方法
    2024-06-02

    まだ無名だった作曲家エルガーが、婚約の贈り物として捧げた名曲【クラシック今日は何の日?】
    2024-06-01

    日本の「木」の文化を家具を通して世界へ【ミラノデザインウィーク】
    2024-06-01

    <今週の本棚・次回の予定>6月8日の毎日新聞書評欄は『新装版 ペルーからきた私の娘』ほか
    2024-06-03

    IT国家の最先端研究を知って 奈良・宇陀市がエストニアへの短期留学事業
    2024-06-04

    アルテミス計画&天の川銀河! 大人も学んで楽しめる「大人レゴ」最新ラインナップは”宇宙”がテーマ!
    2024-06-03

    2025年春に「直島新美術館」が誕生。既存の活動から新しい価値創造を目指す
    2024-06-04

    第34回福岡アジア文化賞受賞者が決定。大賞は真鍋大度
    2024-06-04

    エドガー・サラン個展「EDGAR SARIN ー HUNKY DORY」(VAGUE KOBE)レポート。展示空間の可能性やその調和の在り方を問いかける
    2024-06-04

    PARCELで「Not Quite」開催。「~でなくもない」作家が集結
    2024-06-04

    大学入学共通テスト、追試は本試験1週間後 コロナ禍前に戻す 月経痛の配慮明記も
    2024-06-05

    「安全だと誰も言わない万博」爆発事故で教職員組合 大阪府に子供無料招待中止申し入れ
    2024-06-04

    古今東西 かしゆか商店【つづら】
    2024-06-05

    美しくて“かわいい”結びの技  1400年の歴史を誇る「水引」の可能性を探って
    2024-06-06

    子供と行きたいおすすめ美術館【東京編】。子連れ、親子でアートを楽しもう!
    2024-06-06

    そごう・西武が百貨店として初めてNFTマーケット開設、NFT作品約100点を発売
    2024-06-06

    藤井八冠、5連覇へ白星発進 将棋棋聖戦、山崎八段破る
    2024-06-06

    ©  Dopu Box
    💛