Grep считает, что текстовый файл является двоичным, но это не так

Я наткнулся на.cpp файл в нашей кодовой базе, который рассматривается как двоичный файл grep. Так что я не могу использовать его как текстовый файл, что раздражает и, очевидно, не так, как должно быть. Поэтому я хочу знать, почему grep считает, что файл является двоичным, и решает проблему.

Я пытался найти какие-либо необычные символы с помощью команды

grep -Pna --color -r "[\x00-\x08]|[\x10-\x19]|[\x80-\xFF]" test.cpp

но это не дает никаких совпадений.

Как можно выяснить причину этой проблемы?

Я должен упомянуть, что я на Windows Git Bash.

Выход локали:

LANG=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_ALL=

Ответы на вопрос(1)

Ваш ответ на вопрос