我透過在這裡搜尋問題建立了這個命令。如果我手動提供關鍵字,它會起作用,例如
while read line; do grep -wFrIin "keyword" --exclude-dir={.git,target} --include=\*.{java,ts,html} /path/to/project/; done < keywords.csv
但如果我使用關鍵字檔案的實際內容,那麼我不會得到任何結果:
while read line; do grep -wFrIin "$line" --exclude-dir={.git,target} --include=\*.{java,ts,html} /path/to/project/; done < keywords.csv
另外,當我回顯 $line 時,我得到了關鍵字:
while read line; do echo "$line"; done < keywords.csv
我認為這可能是 \r\n 或 \n 問題,但如果文件中只有一個關鍵字沒有換行符,它仍然不起作用...