Jon*_*ein 24 unicode bash grep
我有一个大文本文件,其中包含一些使LaTeX崩溃的unicode字符.如何在Linux bash中使用sed等文件中找到非ASCII字符?
pix*_*eat 32
尝试:
nonascii() { LANG=C grep --color=always '[^ -~]\+'; }
Run Code Online (Sandbox Code Playgroud)
哪个可以用作:
printf '?TF8\n' | nonascii
Run Code Online (Sandbox Code Playgroud)
在[] ^表示"不".所以[^ -~]意味着字符不在空格和〜之间.因此,排除控制字符,这与非ASCII字符匹配,并且是一个更便携但稍微不太准确的版本[^\x00-\x7f].的\+手段1 or more和将得到multibye字符具有围绕完整的字符(一个或多个)中所示的颜色,而不是在每个字节穿插,从而破坏多字节序列
kev*_*kev 21
试试这个命令:
grep -P '[^\x00-\x7f]' file
Run Code Online (Sandbox Code Playgroud)