如何使用shell对UTF-8编码文件中的汉字进行计数

如何使用shell对UTF-8编码文件中的汉字进行计数,shell,utf-8,wc,Shell,Utf 8,Wc,cat doc.txt将显示以下字符: 8 doc.txt 我可以使用命令 wc-w doc.txt 但它将表明: 8 doc.txt 此命令使用字符你好和这是中文都是一个单词,而实际上你好是两个中文单词和这是中文4 我想让这些中文单词正确计数(示例中有12个单词),有人能帮忙吗?您可以使用-m或-chars选项: $ echo -n "你好" | wc -m 输出: 2 尝试添加LANG=?中文?wc-c文件(不确定在LANG之后使用的值是否正确,您应该能够在不进行太多搜索的情况下

cat doc.txt将显示以下字符:

8 doc.txt
我可以使用命令

wc-w doc.txt

但它将表明:

8 doc.txt
此命令使用字符你好这是中文都是一个单词,而实际上你好是两个中文单词和这是中文4


我想让这些中文单词正确计数(示例中有12个单词),有人能帮忙吗?

您可以使用
-m
-chars
选项:

$ echo -n "你好" | wc -m  
输出:

2

尝试添加
LANG=?中文?wc-c文件
(不确定在LANG之后使用的值是否正确,您应该能够在不进行太多搜索的情况下找到它。此外,如果您使用的是hertiage Unix(AIX、HP、Solaris等),无论您做什么,都不要指望它能正常工作。可能是最新的Linux和最新的
wc
。祝您好运。