Agを使用して特定の拡張子を持つファイル内のテキストを見つける方法は?

Agを使用して特定の拡張子を持つファイル内のテキストを見つける方法は?

ag(銀を探す人)バージョン0.31.0。以下を使用して、複数のファイルから文字列を簡単に見つけることができます。

localhost:workspace davea$ ag 'ftp' .

しかし、特定の拡張子を持つファイルだけをスキャンしたい場合はどうすればよいですか?私はこれを試しました:

localhost:workspace davea$ ag 'ftp' .java
ERR: Error stat()ing: .java
ERR: Error opening directory .java: No such file or directory

しかし、上記のエラーが発生しました。

答え1

マニュアルによるとag利用可能です。-G

   -G --file-search-regex PATTERN
          Only search files whose names match PATTERN.

例えば

ag -G '\.java$' 'ftp' .

同じマニュアルに従ってください

   It is possible to restrict the types of files searched [...]
   For a list of supported types, run ag --list-file-types.

だからあなたも走ることができます

ag --java 'ftp' .

これにより、検索が.java終了するファイル名またはファイル名に制限されます。.properties

答え2

最初からag version 2.2.0実行できag --list-file-types、デフォルトでサポートされているタイプが一覧表示されます。ag "ftp" --java他のJavaファイルのみを実行して検索できます。

関連情報