Dom*_*red 4 unix linux bash awk locale
我收到以下错误:
awk: cmd. line:1: (FILENAME=- FNR=798) warning: Invalid multibyte data detected. There may be a mismatch between your data and your locale.
我正在运行的命令如下:
cat file.txt | awk 'length($0)<10000' > output-file.txt
奇怪的是,如果我管道其他命令awk '{ sub("\r$", ""); print }',它可以正常工作没有错误.
任何人都明白为什么我会得到这个错误?或者,我应该忽略它吗?
使区域设置C只使用单字节编码的ASCII字符集,传递LC_ALL=C给awk环境:
LC_ALL=C awk 'length($0)<10000' file.txt >output-file.txt
Run Code Online (Sandbox Code Playgroud)
此外,您不需要使用catas awkfilename作为参数.