Eu desenvolvi este comando a partir de perguntas de pesquisa aqui. Funciona se eu fornecer a palavra-chave manualmente, por exemplo
while read line; do grep -wFrIin "keyword" --exclude-dir={.git,target} --include=\*.{java,ts,html} /path/to/project/; done < keywords.csv
Mas se estou usando o conteúdo real do arquivo de palavras-chave, não obtenho resultados:
while read line; do grep -wFrIin "$line" --exclude-dir={.git,target} --include=\*.{java,ts,html} /path/to/project/; done < keywords.csv
Além disso, quando faço eco da linha $, recebo as palavras-chave:
while read line; do echo "$line"; done < keywords.csv
Achei que poderia ser um problema \r\n ou \n, mas ainda não funciona se houver apenas uma palavra-chave no arquivo sem nova linha ...