GNU/Linux >> Linux の 問題 >  >> Linux

Silver Searcher –Ackに似たコード検索ツール

Silver Searcherは、クロスプラットフォーム、オープンソース、および無料であるとされている評判の良いコマンドラインコード検索ツールです。機能属性のほとんどをgrepのプレーンテキスト検索機能と共有しています。これら2つのツールの主な違いは、シルバーサーチャー より高速なパフォーマンスオーバーヘッドを提供します。

[次のこともお勧めします:Ripgrep –Linux用の最速のコマンドライン検索ツール]

この記事は、ほとんどの時間をソースコードエディタ、OS端末、またはその他のプログラム可能な環境の前で過ごすプログラマーまたはプログラマー志望者およびLinuxユーザーを対象としています。 Silver searcherの速度だけでなく、「 .gitignore」のようなファイルパターン用の特定のファイル無視アルゴリズムも利用できます。 」と「.hgignore 」拡張機能。

LinuxにSilverSearchをインストールする

お使いのLinuxオペレーティングシステムのディストリビューションに応じて、シルバー検索をインストールできます。 次のコマンド選択のいずれかからのツール。

$ sudo apt-get install silversearcher-ag       [On Debian, Ubuntu and Mint]
$ sudo yum install the_silver_searcher         [On RHEL/CentOS/Fedora and Rocky Linux/AlmaLinux]
$ sudo emerge -a sys-apps/the_silver_searcher  [On Gentoo Linux]
$ sudo pacman -S the_silver_searcher           [On Arch Linux]
$ sudo zypper install the_silver_searcher      [On OpenSUSE]    

シルバーサーチャーの使用例

このツールを使用するには、最初にLinuxターミナル環境にいる必要があります。このツールの柔軟性は、特定の検索文字列に一致させるために、そのファイルまたはディレクトリと同じパスを使用することも、検索文字列の結果を照会するファイルまたはディレクトリへのパスを指定することもできることです。

ディレクトリとサブディレクトリで特定の文字列の一致を検索する

シルバー検索は、現在のフォルダとディレクトリからそれらのサブフォルダとサブディレクトリへの指定された文字列一致結果をフィルタリングして強調表示します。

$ ag photo

特定のディレクトリで一致する文字列を検索する

指定されたディレクトリで、一致する文字列名が照会され、結果が強調表示されます。

$ ag tech /home/dnyce/Desktop

AckMate形式で一致する文字列を検索

ディレクトリで一致する文字列を見つけて、AckMate形式で出力します。

$ ag --ackmate tech /home/dnyce/Desktop

一致する文字列を検索して関連列を印刷する

ディレクトリで一致する文字列を検索し、結果に列番号を出力します。

$ ag --column tech /home/dnyce/Desktop

一致する文字列を検索して関連する単語を出力する

ディレクトリ内で一致する文字列を検索し、関連する単語全体のみを出力します。

$ ag -w tech  /home/dnyce/Desktop

上記の場合、Silverサーチャーは「 tech」と一致するものを出力します 」を完全な単語として。この「技術 」は「テクノロジー」のような言葉で一致します 」および「技術者 」は無視されます。

テキストファイルのみで文字列を検索

検索一致はテキストファイルからのみ取得され、他のファイルタイプからは取得されません。保護されたファイルにアクセスできません

$ ag -t photo .

すべてのファイルタイプで文字列を検索

すべてのファイルタイプで一致する文字列を検索します。

$ ag -a photo ~/Downloads

一致するバイナリファイルも一致として強調表示されます。

隠しファイルで文字列を検索

隠しファイルに含まれるすべてのファイルタイプで文字列の一致を見つけることもできます。

$ ag -u -w .ignore 

圧縮ファイルで文字列を検索

圧縮ファイルまたはzipファイル内でクエリを実行する必要がある場合は、Silverサーチャーが処理を行います。文字列一致検索は、その圧縮ファイルの相対パスを指している必要があります。

$ ag -z -a photo ~/Downloads/pintrest 

シンボリックリンクのある文字列を検索

-f フラグは、これらのシンボリックリンクを使用して出力をトリガーします。

$ ag -tf root /etc/ 

特定のディレクトリの深さで一致する文字列を検索する

文字列検索がトリガーされた時点からのSilver検索のデフォルトのディレクトリ深度検索は25です。これは、ディレクトリの25レベルの深さで、文字列の一致の可能性を検索します。

--depthを使用して、この深さ検索値を拡張または縮小できます。 以下に示すパラメータ。

$ ag -tf --depth 3 root /etc/ 

ご覧のとおり、文字列一致の「 root」を検索します。 」は3つのディレクトリの深さになりました。

シルバー検索エディターの統合

この検索ツールは、 Vimから使用できます。 (ack.vim) 次の統合手順を実装した後のエディター。

.vimrcをトレースします ファイルを作成し、次のいずれかの行に保存します。

let g:ackprg = 'ag –vimgrep'
or
let g:ackprg = 'ag --nogroup --nocolor --column'

この高速で広範囲にわたる強力なコマンドライン検索ツールを使用するために、より多くの露出とオプションが必要な場合は、man agを使用してください。 Linuxシステム端末でコマンドを実行して、その使用法の代替案を確認してください。この記事では、Silver検索ユーティリティをナビゲートする方法についてバランスの取れたガイドを提供しました。


Linux
  1. Linuxの検索ツールの使いやすい代替手段

  2. -execの文字列から不明な文字をエスケープしますか?

  3. 検索から文字列を返す{}を操作します-exec?

  1. Bashで文字列の長さを見つける方法[クイックヒント]

  2. Mousai –Shazamに似た曲を識別するためのシンプルなツール

  3. Linux 用コード比較ツール

  1. GitHubリポジトリからコードの行数を検索します

  2. bashで文字列内の単語のインデックスを見つける方法は?

  3. bash - 部分文字列の文字列インデックス位置を見つける