Если у вас есть доступ к bash
(в Windows вы это делаете, если устанавливаете Git, в Mac / Linux у вас его уже есть), то эта небольшая строчка может сделать приличную работу по сужению поиска:
YOURPROPS=messages.properties
SRCDIR=src
egrep -v "($(
cut -s -d = -f 1 <$YOURPROPS |
while read prop; do
grep -q -d recurse '"'"$prop"'"' $SRCDIR && echo "$prop";
done | xargs echo | sed 's/ /|/g'))" $YOURPROPS | cut -s -d = -f
(предполагается, что все свойства записаны как name=value
без лишних пробелов вокруг знака равенства, что вы используете знак равенства вместо двоеточия или пробела для разделителя и т. Д.)
Он выведет все свойства, которые не будут заключены в двойные кавычки ни в одном файле в $SRCDIR
.Это означает, что это может дать некоторые ложные срабатывания.Например, если у вас есть что-то вроде этого:
String msg = I18n.getString("foo.bar." + "baz");
... он будет думать, что свойство foo.bar.baz
не появится в исходном каталоге.Но, как я уже сказал, это помогает немного сузить поиск.