我使用以下命令搜索和打印非ascii字符:
grep --color -R -C 2 -P -n "[\x80-\xFF]" .
我得到的输出打印出包含非ascii字符的行。 但是它不会打印实际的unicode字符。
有没有办法打印unicode角色?
./test.yml-35-
./test.yml-36-- name: Flush Handlers
./test.yml:37: meta: flush_handlers
./test.yml-38-
--
答案 0 :(得分:2)
Searching for non-ascii characters回答了这个问题。 Filtering invalid utf8 中显示的真正问题是您使用的正则表达式是单字节,而UTF-8是多字节编码(因此模式必须覆盖多个字节)。