Java文件列在已知的文件类型中(使用ag --list-file-types)但不会在下面的ag搜索结果中返回,除非我使用-t标志(-a和-U)还会在结果中返回Java文件)。这是预期的行为吗?我有.gitignore文件,但这些Java文件在任何这些文件中都没有被忽略。
~/src $ ag "ACADEMIC"|grep java
~/src $ ag "ACADEMIC" -t|grep java
{path}/StudentRowMapper.java:23: Student.setAcademicLevel(rs.getString("ACADEMIC_LEVEL"));
答案 0 :(得分:0)
不,这不是预期的行为。而且,在我的快速测试中,没有复制。 Ag将搜索.java文件。
您无需指定搜索java文件。 “--java”文件类型标志用于将搜索限制为仅仅.java和.properties文件。例如:
~/src $ ag --java "ACADEMIC"
由于您使用-a或-U获得结果,但不是没有它们,看起来好像您有一个影响ag的.ignore文件。 Ag忽略文件包括以下模式:.gitignore,.hgignore或.ignore。这些文件可以位于搜索目录中的任何位置。另外,请记住,默认情况下会忽略二进制文件。此外,ag在$ HOME / .agignore文件中查找忽略模式。
(来自手册页:)如果你想忽略.gitignore和.hgignore,但仍考虑.ignore,请使用-U标志。 -t选项将搜索所有文本文件; -a搜索所有文件;和-u搜索所有内容,包括隐藏文件。