使用iconv从UTF-16LE转换为UTF-8

lai*_*ha0 47 linux grep sed utf-16le

您好我正在尝试从Microsoft SQL服务器转换一些日志文件,但文件使用UTf-16LE编码,iconv似乎无法转换它们.

我在做:

iconv -f UTF-16LE -t UTF-8 <filename>
Run Code Online (Sandbox Code Playgroud)

我也试图删除行末尾的任何回车,如果有的话,但也没有修复它.如果我使用gedit保存它,但这不是一个可行的解决方案,因为我有数百个这样的文件.

编辑:请参阅缺失选项的新答案

lai*_*ha0 36

I forgot the -o switch!

The final command is :

iconv -f UTF-16LE -t UTF-8 <filename> -o <new-filename>
Run Code Online (Sandbox Code Playgroud)


A. *_*ius 13

您指定的命令将输出到stdout.您可以使用-o参数,也可以重定向输出:

iconv -f UTF-16LE -t UTF-8 infile -o outfile
Run Code Online (Sandbox Code Playgroud)