有没有办法阻止生成CR字符的直线?

问题描述:

当我将直线输出重定向到一个文件时,我可以看到生成的文件具有^ M(CR,回车符,0x0D十六进制)字符,其内部放置在第144列周围,可能是为了环绕文本输出。有没有办法阻止生成CR字符的直线?

有没有办法关闭直线?或者也许可以通知不同列宽的直线。

我:Beeline version 1.2.1000.2.5.0.0-1245 by Apache Hive

+0

这是一个不好的做法。改为使用'INSERT OVERWRITE [LOCAL] DIRECTORY'。 https://cwiki.apache.org/confluence/display/Hive/LanguageManual+DML#LanguageManualDML-Writingdataintothe文件系统查询 –

+0

我不执行写入配置单元。我只是运行一个SELECT语句。 SELECT的直线输出嵌入了CR。 – paolov

+0

'INSERT OVERWRITE LOCAL DIRECTORY'用于将查询结果转储到本地文件系统 –

您可以尝试

集hive.exec.compress.output = FALSE;

INSERT OVERWRITE DIRECTORY'hdfs_dir''query_here';

当您使用LOCAL,你需要确保你正在运行,其中Hiveserver2运行的节点(机器)上的脚本/查询。如果您从另一台机器运行,它不会失败,但仍会在运行HS2的节点中创建一个文件。