当我在其上运行awk代码时,我的CSV文件的中文字符变成了ascii字符。我知道这个,因为当我在vim中使用我的CSV文件时:
我明白这一点:
words,country,percent_sum,week
å<88><86>æ<9c><9f>,China,16.5,11/22/15
å<8f><91>è´§,China,31.36,11/22/15
中文单词变成了ascii字符。我唯一做的就是:
cat myfile.csv|awk -F, '{if(NF==4 && $4 != "12/13/15-12/19/15" ) print }' > tmp
这很奇怪,因为我没有覆盖我的CSV文件而是写了一个tmp文件。
然而,当我在终端中捕捉CSV文件时它看起来很好。 这是一个我需要改变的vim设置吗?
我已经在我的vimrc中设置了这个设置:
set encoding=utf-8
set fileencoding=utf-8
答案 0 :(得分:-1)
如果中文字符正常显示在vim中,则没有任何问题。
cat
使用终端区域设置,如Alastair建议的那样,请检查您的locale
并注意LANG&amp; LC_ALL。您也可以尝试在终端中输入中文以查看其是否正常工作,然后cat
或awk
将按预期工作。