Мы столкнулись с проблемой, когда кто-то скопировал строку откуда-то в одном из XML-файлов метаданных, который содержал символы ascii 239 (0xef), 191 (0xbf), 189 (0xbd)
Мы исправили проблему в известном файле, но я хотел бы проверить, существует ли аналогичная проблема в любых других файлах xml. Следующая команда ничего не нашла
grep '[^[:print:]]' <filename>
Следующая команда выглядит многообещающей, но она добавляет другие символы, такие как «<» и «/» и т. Д.
grep -e "\W" <filename>
Поскольку это xml-файл, а данная строка является текстом элемента, я не могу использовать параметр -v для grep.
grep $'\xef' <filename>
Вышеупомянутая команда помечает символ, но слишком специфична, чтобы просмотреть 30 000 лишних файлов и найти проблему.
Можно ли использовать команду grep для поиска проблемных символов выше. Для проблемной строки большинство записей являются названиями компаний и вряд ли содержат странные символы ascii.