gpt4 book ai didi

Linux 将 csv 中的 ^M$ 替换为 $

转载 作者:太空宇宙 更新时间:2023-11-04 09:05:12 25 4
gpt4 key购买 nike

我从 ftp 服务器收到了一个 csv 文件,我正在将其提取到表格中。摄取文件时,我收到错误“文件是截断的文件”

实际原因是文件中的数据在行尾包含 $ 和 ^M$。例如:

ACT_RUN_TM、PROG_RUN_TM、US_HE_DT*^M$*"确认","","3600"$

如何使用 linux 命令从行尾删除这些 $ 和 ^M$。

最佳答案

最终正确的解决方案是以文本模式而不是二进制模式从 FTP 服务器传输文件,二进制模式会为您进行适当的行尾转换。更改您的下载脚本或 FTP 应用程序配置以启用文本传输以在将来解决此问题。

假设这是一次性传输并且您已经下载了文件并且只想修复它,您可以使用 tr(1) 来翻译字符。因此,要从文件中删除所有 control-M 字符,您可以通过tr -d '\r' 进行管道传输。或者,如果您想用 control-J 替换它们——例如,如果文件来自 OSX 之前的 Mac 系统,您会这样做——执行 tr '\r' '\n'.

关于Linux 将 csv 中的 ^M$ 替换为 $,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13031670/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com