检查文件是否包含多字节字符。

6

我有一些UTF-8格式的字幕文件。有时这些文件中会出现零散的多字节字符,这会导致某些应用程序出现问题。

在Linux系统上,如何检查并定位某个文件是否包含任何多字节字符?

2个回答

4

您可以使用文件命令

chalet16$ echo test > a.txt
chalet16$ echo testก >  b.txt #One of Thai characters
chalet16$ file *.txt
a.txt: ASCII text
b.txt: UTF-8 Unicode text

1
非常感谢。我能找到有问题的字符吗? - Masroor

2
您可以使用filechardet命令。

1
非常感谢,chardet或file可以产生类似的结果。有没有办法定位像ä这样的有问题的字符? - Masroor
4
您可以使用命令 grep -P '[^\x00-\x7f]' input.txt 来查找文件中的非 ASCII 字符。 - kev

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接